php实现36进制与10进制转换功能示例
本文实例讲述了php实现36进制与10进制转换功能。分享给大家供大家参考,具体如下:
/**
*@descim:十进制数转换成三十六机制数
*@param(int)$num十进制数
*return返回:三十六进制数
*/
functionget_char($num){
$num=intval($num);
if($num<=0)
returnfalse;
$charArr=array("0","1","2","3","4","5","6","7","8","9",'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
$char='';
do{
$key=($num-1)%36;
$char=$charArr[$key].$char;
$num=floor(($num-$key)/36);
}while($num>0);
return$char;
}
/**
*@descim:三十六进制数转换成十机制数
*@param(string)$char三十六进制数
*return返回:十进制数
*/
functionget_num($char){
$array=array("0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
$len=strlen($char);
for($i=0;$i<$len;$i++){
$index=array_search($char[$i],$array);
$sum+=($index+1)*pow(36,$len-$i-1);
}
return$sum;
}
使用实例:
echo"get_char:".get_char(514549)."<br>";
echo"get_num:".get_num('A0ZZ')."<br>";
PS:这里再为大家推荐几款计算与转换工具供大家参考使用:
在线任意进制转换工具:
http://tools.jb51.net/transcoding/hexconvert
科学计算器在线使用_高级计算器在线计算:
http://tools.jb51.net/jisuanqi/jsqkexue
在线计算器_标准计算器:
http://tools.jb51.net/jisuanqi/jsq
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php日期与时间用法总结》、《PHP数学运算技巧总结》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php正则表达式用法总结》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。