做一个udp通信的项目,用到了需要发送十六进制的报文,现在总结一下十六进制的发送办法。
方法一:代码中直接写
//直接通过\x01的形式设定$hex是十六进制的值 $hex = "\x01"; $hex1= "\x02"; send($hex.$hex1);
方法一使用的范围是有局限性的,可以用于给予固定的值,比如说,制定报文的第一个字符使用"\x01",那么可以使用方法一,但是,往往更多时候,是一个变量,这时候,可以使用方法二的方式发送十六进制的方式:
方法二:
//利用chr() $a = "2c";//十六进制 //$a是十六进制的值,将其转换成十进制,然后转换成对应的ascii表的符号 $msg = chr(hexdec($a)); //发送消息 send($msg);