php <<< 怎么打出来,php 打印出字符串的16进制

本文介绍了一个PHP函数,用于将字符串转换为16进制形式并打印出来。该函数使用了chr和bin2hex等核心函数实现字符串到16进制的转换,并通过特定格式输出结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面这个函数是一个php 打印出字符串的16进制实例,这里面的核心函数就是 chr获取二进制然后再进行转成16进制数。

 代码如下复制代码

/*

php 打印出字符串的16进制数据

*/

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;

}

}

$info="this is a testx00x99hex_dump";

print_r(hex_dump($info));

/*

输出结果:

0 : 74 68 69 73 20 69 73 20 61 20 74 65 73 74 00 99 [this is a test..]

10 : 68 65 78 5f 64 75 6d 70 [hex_dump]

*/

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值