<?php
function hex_dump($data, $newline="\n")
{
static $from = '';
static $to = '';
static $width = 16; # number of bytes per line
static $pad = '.'; # padding for non-visible characters
if ($from==='')
{
for ($i=0; $i<=0xFF; $i++)
{
$from .= chr($i);
$to .= ($i >= 0x20 && $i <= 0x7E) ? chr($i) : $pad;
}
}
$hex = str_split(bin2hex($data), $width*2);
$chars = str_split(strtr($data, $from, $to), $width);
$offset = 0;
foreach ($hex as $i => $line)
{
echo sprintf('%6X',$offset).' : '.implode(' ', str_split($line,2)) . ' [' . $chars[$i] . ']' . $newline;
$offset += $width;
}
}
$str = "\xC2\xA1Hola!"; // 7 bytes (6 characters in UTF-8)
echo $str."\n";
hex_dump($str);
echo"\n";
hex_dump(mb_convert_encoding($str, 'UTF-32', 'UTF-8'));
- Output for 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.24 - 5.5.35, 5.6.8 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.12 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
- ¡Hola!
0 : c2 a1 48 6f 6c 61 21 [..Hola!]
0 : 00 00 00 a1 00 00 00 48 00 00 00 6f 00 00 00 6c [.......H...o...l]
10 : 00 00 00 61 00 00 00 21 [...a...!]
- Output for 4.4.5 - 4.4.9
- ¡Hola!
Fatal error: Call to undefined function: str_split() in /in/DPJgI on line 21
Process exited with code 255. - Output for 4.3.2 - 4.3.11, 4.4.0 - 4.4.4
- ¡Hola!
Fatal error: Call to undefined function: str_split() in /in/DPJgI on line 21
Process exited with code 255. - Output for 4.3.0 - 4.3.1
- ¡Hola!
Fatal error: Call to undefined function: str_split() in /in/DPJgI on line 21
preferences:
209.31 ms | 401 KiB | 309 Q