云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > php 实现进制相互转换

php 实现进制相互转换

  • 62 次阅读
  • 3 次下载
  • 2025/6/13 22:48:32

从十进制向其它进制转换,用的是就用该数字不断除以要转换的进制数,读取余数。连接一起就可以了。 <?php  /**

 *十进制转二进制、八进制、十六进制 不足位数前面补零*  *

 * @param array $datalist 传入数据array(100,123,130)  * @param int $bin 转换的进制可以是:2,8,16

 * @return array 返回数据 array() 返回没有数据转换的格式  */

function decto_bin($datalist,$bin) {

  static $arr=array(0,1,2,3,4,5,6,7,8,9,'A','B','C','D','E','F');   if(!is_array($datalist)) $datalist=array($datalist);   if($bin==10)return $datalist; //相同进制忽略

  $bytelen=ceil(16/$bin); //获得如果是$bin进制,一个字节的长度   $aOutChar=array();

  foreach ($datalist as $num)   {

    $t=\

    $num=intval($num);   if($num===0)continue;     while($num>0)     {

      $t=$arr[$num%$bin].$t;       $num=floor($num/$bin);     }

    $tlen=strlen($t);

    if($tlen%$bytelen!=0)     {

    $pad_len=$bytelen-$tlen%$bytelen;

    $t=str_pad(\//不足一个字节长度,自动前面补充0

    }

    $aOutChar[]=$t;   }

  return $aOutChar; }

测试:

var_dump(decto_bin(array(128,253),2)); var_dump(decto_bin(array(128,253),8)); var_dump(decto_bin(array(128,253),16));

X-Powered-By: PHP/5.2.0 Content-type: text/html array(2) {

 [0]=>

 string(8) \ [1]=>

 string(8) \}

array(2) {

 [0]=>

 string(4) \ [1]=>

 string(4) \}

array(2) {

 [0]=>  string(2) \ [1]=>

 string(2) \}

二进制、八进制、十六进制转十进制

这个转换用乘法,如:1101 转十进制:1*2 +1*2 +0*2 +1*2

搜索更多关于: php 实现进制相互转换 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

从十进制向其它进制转换,用的是就用该数字不断除以要转换的进制数,读取余数。连接一起就可以了。 <?php  /**  *十进制转二进制、八进制、十六进制 不足位数前面补零*  *  * @param array $datalist 传入数据array(100,123,130)  * @param int $bin 转换的进制可以是:2,8,16  * @return array 返回数据 array() 返回没有数据转换的格式  */ function decto_bin($datalist,$bin) {   static $arr=array(0,

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com