У меня есть файл с именем test.log, внутри него у меня много шестнадцатеричных строк, но проблема в том, что когда я пытаюсь преобразовать в
hex2bin($hex)
Я получаю это предупреждение
Warning: hex2bin(): Hexadecimal input string must have an even length
но я сделаю вручную пример
$ hex = «hexhere»;
hex2bin($hex)
Это работает отлично. Потому что я окружаю его двойными кавычками.
Заранее спасибо.
Выдается предупреждение, если входная строка имеет нечетную длину. В PHP
5.4.0 строка была молча принята, но последний байт был обрезан.
Как вы можете видеть, ваша длина в файле странная! Так что я думаю, что вы используете PHP версии 5.4 или выше! (проверьте длину в вашем файле)
hex2bin — декодирует шестнадцатерично закодированную двоичную строку, документ: http://php.net/manual/en/function.hex2bin.php