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

yipeiwu_com4年前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程序设计有所帮助。

相关文章

linux下使用crontab实现定时PHP计划任务失败的原因分析

很多人在linux下使用crontab实现PHP执行定时任务却未能成功,不能生成缓存。本文就linux下使用crontab实现定时PHP计划任务失败的原因做一分析。 一般我们linux定...

解析thinkphp中的导入文件标签

第一个是import标签 ,导入方式采用类似ThinkPHP的import函数的命名空间方式,例如: import标签(采用命名空间方式引入资源文件) 闭合 闭合标签...

PHP 获取ip地址代码汇总

代码一: function getip() { static $ip = ''; $ip = $_SERVER['REMOTE_ADDR']; if(isset($_SE...

php如何控制用户对图片的访问 PHP禁止图片盗链

把images目录设置成不充许http访问(把图片目录的:读取、目录浏览 两个权限去掉)。 用一个PHP文件,直接用file函数读取这个图片。在这个PHP文件里进行权限控制。 apach...

php 时间计算问题小结

具体如下: 1>如我们知道开始时间,要加减一个时间,得出一个结果时间,可以用以下代码 $time1='2008-10-1 12:30:30'; echo date('Y-m-d H...