php实现36进制与10进制转换功能示例


Posted in PHP onJanuary 10, 2017

本文实例讲述了php实现36进制与10进制转换功能。分享给大家供大家参考,具体如下:

/**
 * @desc im:十进制数转换成三十六机制数
 * @param (int)$num 十进制数
 * return 返回:三十六进制数
*/
function get_char($num) {
  $num = intval($num);
  if ($num <= 0)
    return false;
  $charArr = array("0","1","2","3","4","5","6","7","8","9",'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
  $char = '';
  do {
    $key = ($num - 1) % 36;
    $char= $charArr[$key] . $char;
    $num = floor(($num - $key) / 36);
  } while ($num > 0);
  return $char;
}
/**
 * @desc im:三十六进制数转换成十机制数
 * @param (string)$char 三十六进制数
 * return 返回:十进制数
 */
function get_num($char){
  $array=array("0","1","2","3","4","5","6","7","8","9","A", "B", "C", "D","E", "F", "G", "H", "I", "J", "K", "L","M", "N", "O","P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y","Z");
  $len=strlen($char);
  for($i=0;$i<$len;$i++){
    $index=array_search($char[$i],$array);
    $sum+=($index+1)*pow(36,$len-$i-1);
  }
  return $sum;
}

使用实例:

echo "get_char:".get_char(514549)."<br>";
echo "get_num:".get_num('A0ZZ')."<br>";
PHP 相关文章推荐
使用 php4 加速 web 传输
Oct 09 PHP
使用php shell命令合并图片的代码
Jun 23 PHP
让PHP更快的提供文件下载的代码
Jun 13 PHP
浅谈web上存漏洞及原理分析、防范方法(文件名检测漏洞)
Jun 29 PHP
PHP加密扩展库Mcrypt安装和实例
Nov 10 PHP
学习php设计模式 php实现建造者模式
Dec 07 PHP
PHP内核学习教程之php opcode内核实现
Jan 27 PHP
Zend Framework分页类用法详解
Mar 22 PHP
浅谈php中的循环while、do...while、for、foreach四种循环
Nov 05 PHP
PHP新特性详解之命名空间、性状与生成器
Jul 18 PHP
php+javascript实现的动态显示服务器运行程序进度条功能示例
Aug 07 PHP
php自定义排序uasort函数示例【二维数组按指定键值排序】
Jun 19 PHP
php获取当前url地址的方法小结
Jan 10 #PHP
PHP实现接收二进制流转换成图片的方法
Jan 10 #PHP
ThinkPHP 模板substr的截取字符串函数详解
Jan 09 #PHP
php 访问oracle 存储过程实例详解
Jan 08 #PHP
微信开发之php表单微信中自动提交两次问题解决办法
Jan 08 #PHP
yii2-GridView在开发中常用的功能及技巧总结
Jan 07 #PHP
yii2实现分页,带搜索的分页功能示例
Jan 07 #PHP
You might like
Search Engine Friendly的URL设计
2006/10/09 PHP
php中强制下载文件的代码(解决了IE下中文文件名乱码问题)
2011/05/09 PHP
php另类上传图片的方法(PHP用Socket上传图片)
2013/10/30 PHP
ThinkPHP分页类使用详解
2014/03/05 PHP
PHP中预定义的6种接口介绍
2015/05/12 PHP
PHP将Excel导入数据库及数据库数据导出至Excel的方法
2015/06/24 PHP
Laravel框架中缓存的使用方法分析
2019/09/06 PHP
尽可能写&quot;友好&quot;的&quot;Javascript&quot;代码
2007/01/09 Javascript
Jquery实战_读书笔记1—选择jQuery
2010/01/22 Javascript
cookie.js 加载顺序问题怎么才有效
2013/07/31 Javascript
js调试系列 源码定位与调试[基础篇]
2014/06/18 Javascript
浅析Node.js查找字符串功能
2014/09/03 Javascript
简介JavaScript中Math.cos()余弦方法的使用
2015/06/15 Javascript
jquery Easyui快速开发总结
2015/08/20 Javascript
js读取并解析JSON类型数据的方法
2015/11/14 Javascript
Jquery 整理元素选取、常用方法一览表
2016/11/26 Javascript
JS获取鼠标位置距浏览器窗口距离的方法示例
2017/04/11 Javascript
AngularJS模糊查询功能实现代码(过滤内容下拉菜单排序过滤敏感字符验证判断后添加表格信息)
2017/10/24 Javascript
React Navigation 使用中遇到的问题小结
2018/05/08 Javascript
解决微信授权成功后点击按返回键出现空白页和报错的问题
2020/06/08 Javascript
JS实现多功能计算器
2020/10/28 Javascript
javascript实现拼图游戏
2021/01/29 Javascript
python错误处理详解
2014/09/28 Python
在Python中操作字典之setdefault()方法的使用
2015/05/21 Python
Python基础教程之正则表达式基本语法以及re模块
2016/03/25 Python
django初始化数据库的实例
2018/05/27 Python
对pycharm 修改程序运行所需内存详解
2018/12/03 Python
GitHub 热门:Python 算法大全,Star 超过 2 万
2019/04/29 Python
PyQt5下拉式复选框QComboCheckBox的实例
2019/06/25 Python
Python如何生成xml文件
2020/06/04 Python
后勤工作职责
2013/12/22 职场文书
2015公务员试用期工作总结
2014/12/12 职场文书
可可西里观后感
2015/06/08 职场文书
再读《皇帝的新衣》的读后感悟!
2019/08/07 职场文书
导游词之寿县报恩寺
2020/01/19 职场文书
nginx 反向代理之 proxy_pass的实现
2021/03/31 Servers