Что означает \ x00, \ x04 в PHP - PullRequest
40 голосов
/ 25 июля 2009

У меня есть несколько кодов, имеющих \ x00 и \ x04 шестнадцатеричные коды , что это значит?

$str= implode("\x00", $var['message']); //line 1
$id= $var['message'] . "\x04" . $id;    //line 2

что произойдет в line1 и line2 Я хочу записать их во внешний файл в виде двоичного формата .

где я могу получить всю информациюкак это.

Ответы [ 5 ]

57 голосов
/ 25 июля 2009

\x обозначает шестнадцатеричное обозначение. См .: PHP-строки

Просмотрите таблицу ASCII , чтобы увидеть, что представляют собой 0x00 и 0x04.

0x00 = NULL
0x04 = EOT (End of transmission)
9 голосов
/ 25 июля 2009

\ x - это способ указать, что следующие два символа представляют шестнадцатеричные цифры. Две шестнадцатеричные цифры (каждая из них 4 бита) составляют байт.

Если вы хотите узнать, что такое десятичная версия, умножьте левую цифру на 16 и добавьте ее к правой цифре, помня, что "a - это 10, «b» - это 11 и т. д.

В других языках программирования знак доллара или последовательность 0x также можно использовать для обозначения шестнадцатеричных чисел.


числа могут представлять что угодно. Иногда они являются контрольными кодами. Проверьте таблицу ASCII .

2 голосов
/ 25 июля 2009
2 голосов
/ 25 июля 2009

\ x04 - Конец передачи в ASCII. Это верно в большинстве языков, подобных Си.

1 голос
/ 25 июля 2009

\xHH - это escape-последовательность, которая описывает байт с этим шестнадцатеричным значением.

Так \x00 описывает байт со значением 0, \x04байт со значением 4. Обратите внимание, что эта escape-последовательность интерполируется только в двойные кавычки .

...