Как преобразовать шестнадцатеричное представление данных в двоичные данные в PHP?

Мне знакома функция php bin2hex() для преобразования двоичных данных в шестнадцатеричное представление.

Однако какова функция дополнения для преобразования шестнадцатеричного представления данных обратно в двоичные данные?

Например:

 $foo = "hello"; $foo = bin2hex($foo); echo $foo; // Displays 68656c6c6f 

Как мне вернуться к приветствию?

 $foo = "68656c6c6f"; // Now what? 

hex2bin() .

Если вы посмотрите на страницу bin2hex на PHP, будут предложены следующие решения:

 $foo = pack("H*" , $foo); echo $foo; 

Существуют также различные реализации hex2bin, которые вы можете выбрать.

Попробуйте pack("H*",$foo) .

http://us3.php.net/manual/en/function.pack.php

Для тех, у кого есть PHP 5.4 и выше, есть стандартный способ сделать это:

<?php $bin = hex2bin("6578616d706c65206865782064617461"); var_dump($bin); ?>

Вывод кода выше должен быть похож на:

string(16) "example hex data"

Отбросьте страницу PHP hex2bin .