On 27.07.2016 at 00:10, David Spector wrote: > All I can find in the PHP Manual for writing raw bytes (unsigned > integers) to a file is fwrite. But when I use it, it seems to write > characters, not raw bytes. For example, the value 1 (0b1) is actually > written as 0x31, not 0x01 as desired. […] fwrite() accepts a string argument, and so other types are juggled to string before they are written. > It doesn't work this way in C or C++, and the PHP Manual says nothing > about this. Indeed. A link to pack()[1] appears to be useful. To write a byte stream, you could use something like: fwrite($stream, pack('C*', 1, 2, 3)); [1] <http://php.net/manual/en/function.pack.php> -- Christoph M. Becker -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php