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

(0)

相关推荐

  • php实现阿拉伯数字和罗马数字相互转换的方法

    本文实例讲述了php实现阿拉伯数字和罗马数字相互转换的方法.分享给大家供大家参考.具体如下: <?php // Function that calculates the roman string to the given number: function dec2roman($f) { // Return false if either $f is not a real number, //$f is bigger than 3999 or $f is lower or equal to 0:

  • PHP中IP地址与整型数字互相转换详解

    IP转换成整型存储是数据库优化一大趋势,不少人目前存储IP时还在使用字符串类型存储,字符串索引比整型索引消耗资源很多,特别是表中数据量大的时候,以及求查询某一个ip段的数据,今天说的ip是指ip4,ip6不在本文范围内. 系统函数ip2long与long2ip PHP中有内置函数ip2long可以将ip地址转换整型. 复制代码 代码如下: $ip = '210.110.11.49'; echo ip2long($ip); 输出: 复制代码 代码如下: -764540111 输出的整型有负号是因为

  • php中base_convert()进制数字转换函数实例

    本文实例讲述了php中base_convert()函数进制数字转换的实现方法.分享给大家供大家参考.具体如下: 语法:base_convert(number,frombase,tobase) 参数 描述 number 必需,原始值. frombase 必需,数字原来的进制. tobase 必需,要转换的进制. PHP实例代码如下: 复制代码 代码如下: $hexadecimal='a37334'; echo base_convert($hexadecimal,16,2);   //转换为二进制输

  • php短网址和数字之间相互转换的方法

    本文实例讲述了php短网址和数字之间相互转换的方法.分享给大家供大家参考.具体实现方法如下: <?php /** * 将数字转为短网址代码 * * @param int $number 数字 * @return string 短网址代码 */ function generate_code($number) { $out = ""; $codes = "abcdefghjkmnpqrstuvwxyz23456789ABCDEFGHJKMNPQRSTUVWXYZ"

  • php导出csv格式数据并将数字转换成文本的思路以及代码分享

    php导出csv格式数据实现:先定义一个字符串 存储内容,例如 $exportdata = '规则111,规则222,审222,规222,服2222,规则1,规则2,规则3,匹配字符,设置时间,有效期'."\n"; 然后对需要保存csv的数组进行foreach循环,例如 复制代码 代码如下: if (!empty($lists)){                  foreach($lists as $key => $value){                    $ti

  • PHP实现将科学计数法转换为原始数字字符串的方法

    本文实例讲述了PHP实现将科学计数法转换为原始数字字符串的方法,分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: function NumToStr($num){     if (stripos($num,'e')===false) return $num;     $num = trim(preg_replace('/[=\'"]/','',$num,1),'"');//出现科学计数法,还原成字符串     $result = "";     wh

  • php使用json_decode后数字对象转换成了科学计数法的解决方法

    本文实例讲述了php使用json_decode后数字对象转换成了科学计数法的解决方法.分享给大家供大家参考,具体如下: 问题: 今天在搞网页游戏在facebook积分上的对接,facebook传过来一个类json字符串,想在callball.php页面当中应用这些参数,于是进行了一次json_decode操作,发现长长的数字都变成了科学计数法,这不是我想要的结果. 解决方法: 做了各方面的转换处理都不好使: $obj='{"order_id":213477815351175,"

  • PHP数字金额转换成中文大写显示

    整个功能其实不难,只是还算挺实用,所以记一下哈,其他编程语言转换一下也是能可以的! 思路:把传过来的金额转换成整数和小数两部分,再对其分别进行转换处理 代码附上: function moneyToString($num) { $digits = ['零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖']; $radices =['', '拾', '佰', '仟', '万', '亿']; $bigRadices = ['', '万', '亿']; $dec

  • PHP 金额数字转换成英文

    复制代码 代码如下: <?php $num=1220.01; echo fmoney($num);//结果:1,220.21 echo umoney($num); //结果:ONE THOUSAND AND TWO HUNDRED TWENTY DOLLARS AND TWENTY-ONE CENTS ONLY echo umoney($num,"rmb"); //结果:ONE THOUSAND AND TWO HUNDRED TWENTY YUAN AND TWENTY-ONE

  • php 把数字转换成汉字的代码

    直接上实例,写到 千亿上了. /** * @author ja颂 * 把数字1-1亿换成汉字表述,如:123->一百二十三 * @param [num] $num [数字] * @return [string] [string] */ function numToWord($num) { $chiNum = array('零', '一', '二', '三', '四', '五', '六', '七', '八', '九'); $chiUni = array('','十', '百', '千', '万',

随机推荐