Как преобразовать текст в коды \ x?

Я хочу преобразовать обычный текст в коды \ x, например, \ x14 \ x65 \ x60

Например :

normal text = "base64_decode" converted \x codes for above text = "\x62\141\x73\145\x36\64\x5f\144\x65\143\x6f\144\x65" 

Как это сделать? Заранее спасибо.

PHP 5.3 однострочный:

 echo preg_replace_callback("/./", function($matched) { return '\x'.dechex(ord($matched[0])); }, 'base64_decode'); 

Выходы \x62\x61\x73\x65\x36\x34\x5f\x64\x65\x63\x6f\x64\x65

Функция ord() дает вам десятичное значение для одного байта. dechex() преобразует его в hex. Чтобы сделать это, пропустите каждый символ в строке и примените обе функции.

 $str = 'base64_decode'; $length = strlen($str); $result = ''; for ($i = 0; $i < $length; $i++) $result .= '\\x'.str_pad(dechex(ord($str[$i])),2,'0',STR_PAD_LEFT); print($result); 

Вот рабочий код:

 function make_hexcodes($text) { $retval = ''; for($i = 0; $i < strlen($text); ++$i) { $retval .= '\x'.dechex(ord($text[$i])); } return $retval; } echo make_hexcodes('base64_decode'); 

Смотрите в действии .