如何在PHP项目中实现一个进制转换功能-创新互联-成都快上网建站

如何在PHP项目中实现一个进制转换功能-创新互联

这篇文章主要介绍了如何在PHP项目中实现一个进制转换功能,此处通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考价值,需要的朋友可以参考下:

10年积累的成都做网站、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计制作后付款的网站建设流程,更有循化免费网站建设让你可以放心的选择与我们合作。

php有什么用

php是一个嵌套的缩写名称,指的是英文超级文本预处理语言(php:Hypertext Preprocessor)的缩写,它的语法混合了C、Java、Perl以及php自创新的语法,主要用来做网站开发,许多小型网站都用php开发,因为php是开源的,从而使得php经久不衰。

10进制转换2、8、16、36、62进制


2、8、16、36、62进制转换10进制

有点要注意下,2、8、16进制转换时,使用的是系统的自己的函数。

所以,不管怎么高精度转换值可能大于2147483646。

另外,

32进制低精转换,较大值:2147483646;
32进制高精转换,较大值:77309411327;
64进制高精转换,较大值:133143986175。

jinzhi.php文件,自带演示功能。





进制转换/title>
</head>
<body>
<form id="jzh" name="jinzhih" method="post" action="">
<input name="go" type="hidden" value="100">
<table width="482" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFE8E8" bgcolor="#F4F8FB">
 <tr>
  <td width="194"><select name="jinzhi0" id="jinzhi0">
  <option value="2">2</option>
  <option value="8">8</option>
  <option value="10" selected="selected">10</option>
  <option value="16">16</option>
  <option value="36">36</option>
  <option value="62">62</option>
  </select>
进制</td>
 <td width="275"><input name="zhi" type="text" id="zhi" /></td>
 </tr>
 <tr>
  <td>进行<input name="lx" type="radio" value="0" checked="checked" />
普通<input type="radio" name="lx" value="1" />高精</td><td> </td>
 </tr>
 <tr>
  <td>转换为
  <select name="jinzhi1" id="jinzhi1">
   <option value="2" selected="selected">2</option>
   <option value="8">8</option>
   <option value="10">10</option>
   <option value="16">16</option>
   <option value="36">36</option>
   <option value="62">62</option>
  </select>进制,</td><td>总长度为
  <input name="changdu" type="text" id="changdu" value="10" size="4" maxlength="2" />
字符。</td></tr><tr>
 <td><input type="submit" name="Submit" value="提交" /></td>
 <td><input type="reset" name="Submit2" value="重置" /></td>
 </tr></table>
 <p>注意:仅能进行10进制转换为2、8、16、36、62进制;或反转换。</p></form>
<?php
class jinzhi_class
{
   //10进制转2、8、16、36、62进制
   function jinzhih_0($shu,$jinzhi,$w)
   {
   $zifu = "";
   while ($shu!=0){
   $linshi = $shu%$jinzhi;
   switch ($jinzhi){
    case 2:
     $zifu = decbin($shu);
     return $zifu;
    case 8:
     $zifu = decoct($shu);
     return $zifu;
    case 16:
     $zifu = dechex($shu);
     return $zifu;
    case 36:
     if ($linshi>=10)
     {
     $zifu.= chr(($linshi+55));
     }else{
      $zifu.= $linshi;}
     break;
    case 62:
     if (($linshi>=10) && ($linshi36)) {$zifu.= chr($linshi+55);break;}
     if (($linshi>=36) && ($linshi62)) {$zifu.= chr($linshi+61);break;}
     $zifu.= $linshi;break;
   default:
   $zifu.= $linshi;
   break;
   }
   $shu = intval($shu/$jinzhi);
   }
   for ($i=strlen($zifu);$i$w;$i++)
   $zifu.="0";
  return strrev($zifu);}
   //2、8、16、36、62进制转10进制
   function jinzhih_1($zifu,$jinzhi,$w)
 { $shu=0;
  for ($i=0;$i=strlen($zifu)-1;$i++)
     {
     $linshi = substr($zifu,$i,1);
     switch ($jinzhi){
      case 2:
       $shu = bindec($zifu);
       $i=strlen($zifu)+1;
       break;
      case 8:
       $shu = octdec($zifu);
      $i=strlen($zifu)+1;
      break;
      case 16:
       $shu = hexdec($zifu);
       $i=strlen($zifu)+1;
       break;
     case 36:
      if (ord($linshi)=57)
      {$shu+=(ord($linshi)-48)*pow($jinzhi,strlen($zifu)-$i-1);
     }else{
       $shu=$shu + (ord($linshi)-55)*pow($jinzhi,strlen($zifu)-$i-1);}
       break;
     case 62:
      if (ord($linshi)=57)
      {$shu+=$linshi*pow($jinzhi,strlen($zifu)-$i-1);     
     }elseif ((ord($linshi)>=65) && (ord($linshi)=90)){
      $shu+= (ord($linshi)-55)*pow($jinzhi,strlen($zifu)-$i-1);
      }else{
      $shu+= (ord($linshi)-61)*pow($jinzhi,strlen($zifu)-$i-1);}
      break;
     }
   }
   return $shu;
   }
   //10进制高精度转换2、8、16、36、62进制
   function jinzhih_G0($shu,$jinzhi,$w)
   {
   $zifu = "";
   while ($shu!=0){
   $linshi = bcmod($shu,$jinzhi);
   switch ($jinzhi){
    case 2:
     $zifu = decbin($shu);
     return $zifu;
    case 8:
     $zifu = decoct($shu);
     return $zifu;
    case 16:
     $zifu = dechex($shu);
     return $zifu;
    case 36:
     if ($linshi>=10)
     {
     $zifu.= chr(($linshi+55));
     }else{
      $zifu.= $linshi;}
     break;
    case 62:
     if (($linshi>=10) && ($linshi36)) {$zifu.= chr($linshi+55);break;}
     if (($linshi>=36) && ($linshi62)) {$zifu.= chr($linshi+61);break;}
     $zifu.= $linshi;break;
   default:
   $zifu.= $linshi;
   break;
   }
   $shu = intval(bcdiv($shu,$jinzhi));
   }
   for ($i=strlen($zifu);$i$w;$i++)
   $zifu.="0";
  return strrev($zifu);}
   //2、8、16、36、62进制高精度转换10进制
   function jinzhih_G1($zifu,$jinzhi,$w)
 { $shu= "";
  for ($i=0;$i=strlen($zifu)-1;$i++)
     {
     $linshi = substr($zifu,$i,1);
     switch ($jinzhi){
      case 2:
       $shu = bindec($zifu);
       $i=strlen($zifu)+1;
       break;
      case 8:
       $shu = octdec($zifu);
      $i=strlen($zifu)+1;
      break;
      case 16:
       $shu = hexdec($zifu);
       $i=strlen($zifu)+1;
       break;
     case 36:
      if (ord($linshi)=57)
      {$shu=bcadd($shu,bcmul((ord($linshi)-48),bcpow($jinzhi,strlen($zifu)-$i-1)));
     }else{
       $shu=bcadd($shu,bcmul((ord($linshi)-55),bcpow($jinzhi,strlen($zifu)-$i-1)));}
       break;
     case 62:
      if (ord($linshi)=57)
      {$shu=bcadd($shu,bcmul($linshi,bcpow($jinzhi,strlen($zifu)-$i-1)));
     }elseif ((ord($linshi)>=65) && (ord($linshi)=90)){
      $shu=bcadd($shu,bcmul((ord($linshi)-55),bcpow($jinzhi,strlen($zifu)-$i-1)));
      }else{
      $shu=bcadd($shu,bcmul((ord($linshi)-61),bcpow($jinzhi,strlen($zifu)-$i-1)));
      }
      break;
     }
   }
   return $shu;}
}
if (isset($_GET["p"]))
{if ($_GET["p"]==="1"){
echo "";
echo "提示:
";
echo "32进制低精转换,较大值:2147483646
";
echo "32进制高精转换,较大值:77309411327
";
echo "64进制高精转换,较大值:133143986175
";
echo "";
echo "值为:";
$Fs = new jinzhi_class();
if ($_POST['lx']=="0" && $_POST['jinzhi0']=="10")
{echo $Fs->jinzhih_0($_POST['zhi'],$_POST['jinzhi1'],$_POST['changdu'])."
";}
if ($_POST['lx']=="1" && $_POST['jinzhi0']=="10")
{echo $Fs->jinzhih_G0($_POST['zhi'],$_POST['jinzhi1'],$_POST['changdu']);}
if ($_POST['lx']=="0" && $_POST['jinzhi0']>"10")
{echo $Fs->jinzhih_1($_POST['zhi'],$_POST['jinzhi0'],$_POST['changdu']);}
if ($_POST['lx']=="1" && $_POST['jinzhi0']>"10")
{echo $Fs->jinzhih_G1($_POST['zhi'],$_POST['jinzhi0'],$_POST['changdu']);}
}
echo "";}
$mtime1 = explode(" ", microtime());
$endTime = $mtime1[0] + $mtime1[1];
printf ("页面执行时间:%.6fs.",$endTime-$startTime);
?></pre><p>到此这篇关于如何在PHP项目中实现一个进制转换功能的文章就介绍到这了,更多相关如何在PHP项目中实现一个进制转换功能的内容请搜索创新互联<a href="https://www.cdcxhl.com/" target="_blank">网站建设公司</a>,以前的文章或继续浏览下面的相关文章希望大家以后多多支持创新互联网站建设公司,!</p>                    <br>
                    当前文章:如何在PHP项目中实现一个进制转换功能-创新互联                    <br>
                    文章起源:<a href="http://kswjz.com/article/eohdg.html">http://kswjz.com/article/eohdg.html</a>
                </div>
                <div class="view-qrocde cl">
                    <div class="m z"><img src="/Public/Home/images/ew.jpg"/></div>
                    <div class="text">
                        <h6>扫二维码与项目经理沟通</h6>
                        <p>我们在微信上24小时期待你的声音</p>
                        <p>解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流</p>
                    </div>
                </div>
                <div class="othernews cl">
                    <h3>其他资讯</h3>
                    <ul>
                        <li><a href="/article/dcpjcoo.html">阿里云无法使用ftp服务器的简单介绍</a></li><li><a href="/article/dcpjcge.html">阿里云学生服务器过户 阿里云学生服务器过户需要多久</a></li><li><a href="/article/dcpjceh.html">c语言减法函数代码 c语言减法程序源代码</a></li><li><a href="/article/dcpjccp.html">php比较两个表单数据 php ide比较</a></li><li><a href="/article/dcpjcdj.html">那些公司用go语言 哪些公司用go语言</a></li>                    </ul>
                </div>
            </div>
        </div>
        <div class="sidebar">
            <div class="tuijian">
                <a href="#">
                    <h2 class="cl"><span>行业动态</span></h2>
                    <h3>企业网站建设的重要性!</h3>
                    <p>现在虽然是移动互联网时代,但企业网站依然重要,包含PC站点,移动站。可以说企业网站关系企业的未来发展和前途,尤其对中小企业更是如此,一些中小企业老板,对自己的名片很在乎,因为这是个门面。...</p>
                </a>
            </div>
            <div class="ser sidesub">
                <h2>服务项目</h2>
                <ul class="ebox">
                    <li class="sub sub-1">
                        <div>
                            <h3>网站建设</h3>
                            <p></p>
                            <a class="btn" href="/serve/website/">查看详情</a>
                        </div>
                    </li>
                    <li class="sub sub-1">
                        <div>
                            <h3>移动端/APP</h3>
                            <p></p>
                            <a class="btn" href="/serve/moblie/">查看详情</a>
                        </div>
                    </li>
                    <li class="sub sub-1">
                        <div>
                            <h3>微信/小程序</h3>
                            <p></p>
                            <a class="btn" href="/serve/small/">查看详情</a>
                        </div>
                    </li>
                    <li class="sub sub-1">
                        <div>
                            <h3>技术支持</h3>
                            <p></p>
                            <a class="btn" href="/serve/tech/">查看详情</a>
                        </div>
                    </li>
                    <li class="sub sub-1">
                        <div>
                            <h3>其它服务</h3>
                            <p></p>
                            <a class="btn" href="/serve/othe/">查看详情</a>
                        </div>
                    </li>
                    <li class="sub sub-5">
                        <div>
                            <h3>更多服务项目</h3>
                            <p> <a>用我们的专业和诚信赢得您的信赖,从PC到移动互联网均有您想要的服务!</a></p>
                            <a class="btn" href="/serve/">获取更多</a>
                        </div>
                    </li>
                </ul>
            </div>
            <div class="contact" id="fix">
                <h2 class="cl"> <span>联系吧</span> <a href="https://map.baidu.com/" class="ditu" rel="nofollow" target="_blank">在百度地图上找到我们</a> </h2>
                <h3>电话:13518219792</h3>
                <p>如遇占线或暂未接听请拨:136xxx98888</p>
                <div class="qq"> <a href="//wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes" rel="nofollow" target="_blank">业务咨询</a> <a href="//wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes" rel="nofollow" target="_blank">技术咨询</a> <a href="//wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes" rel="nofollow" target="_blank">售后服务</a> </div>
            </div>
        </div>
        <script>
            //固定滚动
            (function () {
                var oDiv = document.getElementById("fix");
                var H = 120,
                    iE6;
                var Y = oDiv;
                while (Y) {
                    H += Y.offsetTop;
                    Y = Y.offsetParent
                };
                iE6 = window.ActiveXObject && !window.XMLHttpRequest;
                if (!iE6) {
                    window.onscroll = function ()
                    {
                        var s = document.body.scrollTop || document.documentElement.scrollTop;
                        if (s > H) {
                            oDiv.className = "contact  fixed";
                            if (iE6) {
                                oDiv.style.top = (s - H) + "px";
                            }
                        } else {
                            oDiv.className = "contact ";
                        }
                    };
                }

            })();
        </script>
    </div>
    <div class="footer">
        <div class="wp">
            <div class="wpss cl">
                <dl class="about">
                    <dt>网站设计</dt>
                    <dd><a href="http://chengdu.cdcxhl.cn/dingzhi/" target="_blank" title="高端定制网站设计">高端定制网站设计</a></dd><dd><a href="https://www.cdxwcx.com/" target="_blank" title="成都网站设计公司">成都网站设计公司</a></dd><dd><a href="https://www.cdcxhl.com/xiangyingshi.html" target="_blank" title="响应式网站设计">响应式网站设计</a></dd><dd><a href="http://www.cdkjz.cn/" target="_blank" title="高端网站设计">高端网站设计</a></dd>                </dl>
                <dl class="about">
                    <dt>网站制作</dt>
                    <dd><a href="http://www.dzwzjz.com/" target="_blank" title="达州网站制作">达州网站制作</a></dd><dd><a href="http://www.kswcd.com/mobile/" target="_blank" title="手机网站制作">手机网站制作</a></dd><dd><a href="http://www.cdkjz.cn/" target="_blank" title="成都网站制作">成都网站制作</a></dd><dd><a href="http://m.cdcxhl.com/" target="_blank" title="成都网站制作">成都网站制作</a></dd>                </dl>
                <dl class="contact">
                    <dt>联系我们</dt>
                    <dd>电话:13518219792</dd>
                    <dd>邮箱:631063699@qq.com</dd>
                    <dd>地址:成都青羊区锦天国际1002号</dd>
                    <dd>网址:www.kswjz.com</dd>
                </dl>
                <dl class="about" style="margin-left:50px;width:235px;">
                    <dt>网站建设</dt>
                    <dd><a href="http://www.dzzwz.com/" target="_blank" title="网站建设公司">网站建设公司</a></dd><dd><a href="http://www.wjzwz.com/" target="_blank" title="温江网站建设">温江网站建设</a></dd><dd><a href="http://www.cqcxhl.com/" target="_blank" title="重庆企业网站建设">重庆企业网站建设</a></dd><dd><a href="http://www.sclezhi.cn/" target="_blank" title="乐至网站建设">乐至网站建设</a></dd>                </dl>
                <dl class="flow">
                    <dt></dt>
                    <div class="ma cl">
                        <div class="m"> <img src="/Public/Home/images/ew.jpg" />
                            <p>微信二维码</p>
                        </div>
                    </div>
                </dl>
            </div>
        </div>
        <div class="footer-link wp">
            <ul class="wpss cl">
                <li class="fisrt">友情链接</li>
                <li><a href="http://m.cdcxhl.cn/shop/
" title="成都商城网站建设" target="_blank">成都商城网站建设</a></li><li><a href="http://www.kswcd.com/" title="企业网站设计" target="_blank">企业网站设计</a></li><li><a href="https://www.cdcxhl.com/tuoguan/liantong/" title="成都联通服务器托管" target="_blank">成都联通服务器托管</a></li><li><a href="http://www.cdkjz.cn/wangzhan/" title="成都网站推广" target="_blank">成都网站推广</a></li><li><a href="http://chengdu.cdcxhl.cn/jianshe/
" title="成都网站建设公司" target="_blank">成都网站建设公司</a></li><li><a href="http://www.mswzjz.cn/" title="攀枝花网站建设" target="_blank">攀枝花网站建设</a></li><li><a href="http://www.emts.com.cn/about/" title="东方电机技改服务有限公司" target="_blank">东方电机技改服务有限公司</a></li><li><a href="https://www.cdxwcx.com/city/qionglai/" title="邛崃网站建设" target="_blank">邛崃网站建设</a></li><li><a href="http://www.bzwzjz.com/serve/" title="高端网站设计" target="_blank">高端网站设计</a></li><li><a href="https://www.xwcx.net/jigui.html" title="成都机柜租用" target="_blank">成都机柜租用</a></li>            </ul>
        </div>
    </div>
    <div class="bot-footer">
        <div class="wp">
            <p class="wpss"> <em>Copyright © 2002-2023 www.kswjz.com 快上网建站品牌 QQ:244261566 版权所有</em> <em>备案号:<a href="http://beian.miit.gov.cn/" rel="external nofollow">蜀ICP备19037934号</a></em>
            </p>
            <p class="wpss" style="line-height:30px !important;"> </p>
        </div>
    </div>
    <div class="footer-kefu">
        <ul>
            <li class="qq"><a href="https://wpa.qq.com/msgrd?v=3&uin=244261566&site=qq&menu=yes"><em></em>在线咨询</a>
            </li>
            <li class="tel"><a href="tel:13518219792" target="_blank"><em></em>13518219792</a></li>
            <li class="wx"> <em></em>
                <div class="code"> <img src="/Public/Home/images/ew.jpg" />
                    <p>微信二维码</p>
                </div>
            </li>
            <li class="m"> <em></em>
                <div class="code"> <img src="/Public/Home/images/ew.jpg" />
                    <p>移动版官网</p>
                </div>
            </li>
            <li class="top"><em></em></li>
        </ul>
    </div>
    <script src="/Public/Home/js/all.js"></script>
</body>
</html>
<script>
    $(".cont img").each(function(){
        var src = $(this).attr("src");    //获取图片地址
        var str=new RegExp("http");
        var result=str.test(src);
        if(result==false){
            var url = "https://www.cdcxhl.com"+src;    //绝对路径
            $(this).attr("src",url);
        }
    });
    window.onload=function(){
        document.oncontextmenu=function(){
            return false;
        }
    }
</script>