十进制转二进制,八进制,十六进制(PHP)
<?php
#使用:$var=e(数字,进制);
function e($v,$l){
if($v>0&&in_array($l,array(2,8,16))){
$x=array(0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F);
while($v!=0){
$r.=($l!=16)?ceil($v%$l):$x[ceil($v%$l)];
$v=intval($v/$l);
}
$r=strrev($r);
$r=($l==2)?$r:(($l==8)?'0'.$r:'0x'.$r);
return $r;
}else{
return $v;
}
}
echo e(100,2);
#结果:1100100
echo e(100,8);
#结果:0144
echo e(100,16);
#结果:0x64
?>
另外,php也有自己的x數- -
bindec() -- 二进制转换为十进制
decbin() -- 十进制转换为二进制
dechex() -- 十进制转换为十六进制
decoct() -- 十进制转换为八进制
hexdec() -- 十六进制转换为十进制
octdec() -- 八进制转换为十进制
base_convert()-- 在任意进制之间转换数字
转贴:不详