Всем ПРИВЕТ! Подскажите пожалуйста такую вещь: функция bin2hex производит побайтовое преобразование символьных данных в шестнадцатеричный вид допустим "определяющий" переведет в cfd0d2c5c4c5ccd1c0ddc9ca а как потом перевести назад cfd0d2c5c4c5ccd1c0ddc9ca в строку?
Спасибо конечно что повысиси меня до такого свания обычного сайтового писарчука (хакингом не увлекаюсь (разве что только в целях самообороны созданных сайтов)). Но все дело куда проще, знакомый попросил перевести обну текстовку в 16-ый код. Я с помощью bin2hex() это сделал, а самому стало интересно как этой хрени опять придать божеский вид. Функция pack() (перепробовал все ее параметры) не помогла.
Код (Text): >php -r "$b = '1234'; $h = bin2hex($b); echo 'hex:' . $h . '. '; $ah = str_split($h, 2); $ad = array_map('hexdec', $ah); $as = array_map('chr', $ad); $s = implode('', $as); echo 'string:' . $s;" hex:31323334. string:1234 Код (Text): >php -r "$b = '12340'; $h = bin2hex($b); echo 'hex:' . $h . '. '; $ah = str_split($h, 2); $a = array_merge(array(str_repeat('H2', count($ah))), $ah); $s = call_user_func_array('pack', $a); echo 'string:' . $s;" hex:3132333430. string:12340
iliavlad, вам следует взять AlleeX и проследовать в документацию по PHP на php.net. После прочтения документации - прочесть коментарии.
Сайт то конечно хораший, стору нет. Я на нем иногда но коду смотрю какие нибудь решения. Но теорию на техническом английском изучать не осилю. А на счет какие действия были предприняты: разобрано до каждой буквы несколько нороших (толстых) книг по ПХП российских авторов и гугл. Этой теме маловано посвящается, да и мне понадобилось только ради спортивного интереса.
там в коментариях есть реализация нужной вам функции. PHP: function hex2bin($str) { $bin = ""; $i = 0; do { $bin .= chr(hexdec($str{$i}.$str{($i + 1)})); $i += 2; } while ($i < strlen($str)); return $bin; } достаточно было глазами по тексту пробежаться, инглиш даже необязательно знать. хотя для меня всегда было загадкой, как можно заниматься программированием, не зная инглиша. короче, советую штудировать мануалы, лексика там небольшая, научиться читать несложно. без умения работать с документацией начинающий программер обречен топтаться на месте в своем развитии.