脑抽筋了,谁帮忙写一个简单的 $a = (int) 456;求输出字符串$b = 'C8010000';//定长8个字符十进制 456 = 十六进制 1C8就是转换16进制后 低位在前,高位补零 输出写个简单点的,别用循环 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这样够简单吧?$a = (int) 456;echo sprintf('%08X', current(unpack('L', pack('N', $a)))); 让高手见笑了,我给出一个不用unpack的例子:<?php$a = 456;$b = sprintf("%X",$a);$len = strlen($b);$xlen = 8 - $len;$c = sprintf("%0".$xlen."d",0);$d = $b.$c;echo $d;?>输出结果:1C800000 这样也是可以的$a = (int) 456;$p = str_split(sprintf('%08X', $a), 2);echo join('', array_reverse($p)); 来个复杂的 $a = (int) 456;$b = sprintf("%X",$a);$b = strlen($b)%2 == 0 ? $b : '0'.$b;echo str_pad(join('', array_reverse(str_split($b, 2))), 8, '0', STR_PAD_RIGHT); 360扫描网站提示有漏洞 搭建网站时报错:Warning: mysql_connect() 高手指教 PHP中向MysqL数据库里插入汉字时出现???? 各路英雄豪杰,网站整合discuz后如何设置,登陆cookie有效期 php验证签名问题 smarty 数组 如何打开gd库 php如何调用WebServer提供的服务 smarty 模板路径问题 3个数的和在一个范围里,求3个数 基础的显示问题
echo sprintf('%08X', current(unpack('L', pack('N', $a))));
<?php
$a = 456;
$b = sprintf("%X",$a);
$len = strlen($b);
$xlen = 8 - $len;
$c = sprintf("%0".$xlen."d",0);
$d = $b.$c;
echo $d;
?>输出结果:1C800000
$a = (int) 456;
$p = str_split(sprintf('%08X', $a), 2);
echo join('', array_reverse($p));
$b = sprintf("%X",$a);
$b = strlen($b)%2 == 0 ? $b : '0'.$b;
echo str_pad(join('', array_reverse(str_split($b, 2))), 8, '0', STR_PAD_RIGHT);