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


Posted in PHP onAugust 10, 2018

本文实例讲述了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);
}
PHP 相关文章推荐
php模板之Phpbean的目录结构
Jan 10 PHP
php 常用类汇总 推荐收藏
May 13 PHP
php中防止伪造跨站请求的小招式
Sep 02 PHP
php设计模式之命令模式的应用详解
May 21 PHP
php除数取整示例
Apr 24 PHP
ThinkPHP模板判断输出Empty标签用法详解
Jun 30 PHP
php使用escapeshellarg时中文被过滤的解决方法
Jul 10 PHP
Yii2实现上下联动下拉框功能的方法
Aug 10 PHP
php使用Jpgraph创建折线图效果示例
Feb 15 PHP
Laravel框架中Blade模板的用法示例
Aug 30 PHP
php 二维数组快速排序算法的实现代码
Oct 17 PHP
laravel 实现登陆后返回登陆前的页面方法
Oct 03 PHP
PHP实现的服务器一致性hash分布算法示例
Aug 09 #PHP
PHP检查端口是否可以被绑定的方法示例
Aug 09 #PHP
php对象工厂类完整示例
Aug 09 #PHP
php闭包中使用use声明变量的作用域实例分析
Aug 09 #PHP
php生成二维码不保存服务器还有下载功能的实现代码
Aug 09 #PHP
PHP命令Command模式用法实例分析
Aug 08 #PHP
PHP耦合设计模式实例分析
Aug 08 #PHP
You might like
dedecms防止FCK乱格式化你的代码的修改方法
2007/03/17 PHP
php 分页函数multi() discuz
2009/06/21 PHP
PHP zlib扩展实现页面GZIP压缩输出
2010/06/17 PHP
逆序二维数组插入一元素的php代码
2012/06/08 PHP
PHP fopen 读取带中文URL地址的一点见解
2012/09/25 PHP
用javascript将数据库中的TEXT类型数据动态赋值到TEXTAREA中
2007/04/20 Javascript
Highslide.js是一款基于js实现的网页中图片展示插件
2020/03/30 Javascript
input 输入框内的输入事件详细分析
2010/03/17 Javascript
jQuery之过滤元素操作小结
2013/11/30 Javascript
jquery 合并内容相同的单元格(示例代码)
2013/12/13 Javascript
JavaScript数值数组排序示例分享
2014/05/27 Javascript
JavaScript设置body高度为浏览器高度的方法
2015/02/09 Javascript
AngularJs  E2E Testing 详解
2016/09/02 Javascript
Bootstrap CSS组件之分页(pagination)和翻页(pager)
2016/12/17 Javascript
详解webpack打包vue时提取css
2017/05/26 Javascript
微信小程序实现点击按钮修改view标签背景颜色功能示例【附demo源码下载】
2017/12/06 Javascript
详解Vue项目中出现Loading chunk {n} failed问题的解决方法
2018/09/14 Javascript
angularJs复选框checkbox选中进行ng-show显示隐藏的方法
2018/10/08 Javascript
解决VUE项目使用Element-ui 下拉组件的验证失效问题
2020/11/07 Javascript
[15:57]教你分分钟做大人:斧王
2014/10/30 DOTA
python实现发送邮件功能
2017/07/22 Python
Python实现Logger打印功能的方法详解
2017/09/01 Python
Python标准库inspect的具体使用方法
2017/12/06 Python
win10系统下Anaconda3安装配置方法图文教程
2018/09/19 Python
Pandas 按索引合并数据集的方法
2018/11/15 Python
python并发编程 Process对象的其他属性方法join方法详解
2019/08/20 Python
python使用matplotlib绘制雷达图
2019/10/18 Python
tensorflow自定义激活函数实例
2020/02/04 Python
pycharm 中mark directory as exclude的用法详解
2020/02/14 Python
Python3标准库之dbm UNIX键-值数据库问题
2020/03/24 Python
优秀毕业生就业推荐信
2014/05/22 职场文书
个人收入证明范本
2014/09/18 职场文书
教师党的群众路线教育实践活动学习心得体会
2014/10/30 职场文书
出纳年终工作总结2014
2014/12/05 职场文书
mysql定时自动备份数据库的方法步骤
2021/07/07 MySQL
Win11软件图标固定到任务栏
2022/04/19 数码科技