Ian Firla wrote: > I thought of that too and have since expanded my debugging. The types > are correct when passed to fwrite. They come out the other end as > strings: > > 16:39:54 SENT 'K' of type string > 16:39:54 SENT '0' of type integer > 16:39:54 SENT '0' of type integer > 16:39:54 SENT '65' of type integer > 16:39:54 SENT '31' of type integer > > 15:46:10 192.168.0.101:32778 --> 192.168.0.84:32896 | UDP | > > 0000: 4b K > > > 15:46:10 192.168.0.101:32778 --> 192.168.0.84:32896 | UDP | > > > 0000: 30 0 > > > 15:46:10 192.168.0.101:32778 --> 192.168.0.84:32896 | UDP | > > 0000: 30 0 > > > 15:46:10 192.168.0.101:32778 --> 192.168.0.84:32896 | UDP | > > 0000: 3635 65 > > > 15:46:10 192.168.0.101:32778 --> 192.168.0.84:32896 | UDP | > > 0000: 3331 31 > > As you can see, the last two elements "65" and "31" have arrived as > strings of two bytes rather than integers of one.
Damn. Okay, maybe maybe maybe try putting your binary data into a temp file, and then sending that file out. It won't be fast, but it might suffice for what you need. That's assuming fwrite() to a file will output binary data... Another option would be to convert to the string that would match the binary data you want... if (is_int($msg_to_send)){ fwrite($fp, chr($msg_to_send)); } else{ fwrite($fp, $msg_to_send); } This would be faster, and probably cleaner than the temp file, actually. NOTE: is_int is faster than gettype() == 'integer' and the manual states that they don't guarantee that 'integer' won't change some day. Use is_int. -- Like Music? http://l-i-e.com/artists.htm -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php