PHP实现十进制数字与二十六进制字母串相互转换操作示例

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP实现十进制数字与二十六进制字母串相互转换操作。分享给大家供大家参考,具体如下:

<?php
/**
 * 将十进制数字转换为二十六进制字母串
 */
function num2alpha($intNum, $isLower=true)
{
  $num26 = base_convert($intNum, 10, 26);
  $addcode = $isLower ? 49 : 17;
  $result = '';
  for ($i=0; $i<strlen($num26); $i++) {
    $code = ord($num26{$i});
    if ($code < 58) {
      $result .= chr($code+$addcode);
    } else {
      $result .= chr($code+$addcode-39);
    }
  }
  return $result;
}
/**
 * 将二十六进制字母串转换为十进制数字
 */
function alpha2num($strAlpha)
{
  if (ord($strAlpha{0}) > 90) {
    $startCode = 97;
    $reduceCode = 10;
  } else {
    $startCode = 65;
    $reduceCode = -22;
  }
  $num26 = '';
  for ($i=0; $i<strlen($strAlpha); $i++) {
    $code = ord($strAlpha{$i});
    if ($code < $startCode+10) {
      $num26 .= $code-$startCode;
    } else {
      $num26 .= chr($code-$reduceCode);
    }
  }
  return (int)base_convert($num26, 26, 10);
}

PS:这里再为大家推荐几款计算与转换工具供大家参考使用:

在线任意进制转换工具:
http://tools.jb51.net/transcoding/hexconvert

科学计算器在线使用_高级计算器在线计算:
http://tools.jb51.net/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.jb51.net/jisuanqi/jsq

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数据结构与算法教程》、《php程序设计算法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP常用遍历算法与技巧总结》及《PHP数学运算技巧总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

解决PhpMyAdmin中导入2M以上大文件限制的方法分享

要处理这个问题,经过一番研究发现,有2种方法:方法一: 找到php.ini搜索这3个地方 upload_max_filesize , memory_limit 和 post_max_si...

采用header定义为文件然后readfile下载(隐藏下载地址)

复制代码 代码如下:<?php function sendFile($fileName, $fancyName = '', $forceDownload = true, $spee...

关于php连接mssql:pdo odbc sql server

只有一个php_pdo_odbc.dll。 so~最新最好的php连接mssql方法应该是这样: 复制代码 代码如下: <?php $cnx = new PDO("odbc:Dri...

php define的第二个参数使用方法

看手册说define定义的常量只允许:仅允许标量和 null。标量的类型是 integer, float,string 或者 boolean。 也能够定义常量值的类型为 resource...

php curl发送请求实例方法

cURL可以使用URL的语法模拟浏览器来传输数据,因为它是模拟浏览器,因此它同样支持多种协议,FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT,...