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 相关文章推荐
php a simple smtp class
Nov 26 PHP
PHP 单引号与双引号的区别
Nov 24 PHP
PHP中的strtr函数使用介绍(str_replace)
Oct 20 PHP
理解PHP中的stdClass类
Apr 18 PHP
smarty中js的调用方法示例
Oct 27 PHP
ThinkPHP中处理表单中的注意事项
Nov 22 PHP
php+mysql结合Ajax实现点赞功能完整实例
Jan 30 PHP
PHP实现搜索相似图片
Sep 22 PHP
php遍历、读取文件夹中图片并分页显示图片的方法
Nov 15 PHP
php批量修改表结构实例
May 24 PHP
ThinkPHP5.0 图片上传生成缩略图实例代码说明
Jun 20 PHP
PHP生成短网址的思路以及实现方法的详解
Mar 25 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
YII模块实现绑定二级域名的方法
2014/07/09 PHP
浅谈thinkphp的实例化模型
2015/01/04 PHP
PHP变量赋值、代入给JavaScript中的变量
2015/06/29 PHP
基于Laravel 5.2 regex验证的正确写法
2019/09/29 PHP
PHP中关于php.ini参数优化详解
2020/02/28 PHP
Thinkphp5框架中引入Markdown编辑器操作示例
2020/06/03 PHP
jqPlot jquery的页面图表绘制工具
2009/07/25 Javascript
JQuery UI皮肤定制
2009/07/27 Javascript
combox改进版 页面原型参考dojo的,比网上jQuery的那些combox功能强,代码更小
2010/04/15 Javascript
Javascript浅谈之this
2013/12/17 Javascript
浅谈javascript 函数内部属性
2015/01/21 Javascript
Javascript节点关系实例分析
2015/05/15 Javascript
javascript实现数组中的内容随机输出
2015/08/11 Javascript
Bootstrap整体框架之CSS12栅格系统
2016/12/15 Javascript
JScript实现表格的简单操作
2017/08/15 Javascript
Vuex提升学习篇
2018/01/11 Javascript
[原创]jquery判断元素内容是否为空的方法
2018/05/04 jQuery
JavaScript检查数据中是否存在相同的元素(两种方法)
2018/10/07 Javascript
jQuery中DOM操作原则实例分析
2019/08/01 jQuery
tweenjs缓动算法的使用实例分析
2019/08/26 Javascript
[02:28]DOTA2亚洲邀请赛附加赛 RECAP赛事回顾
2015/01/29 DOTA
[04:52]2015国际邀请赛LGD战队晋级之路
2015/08/14 DOTA
Python判断变量是否已经定义的方法
2014/08/18 Python
Python实现PS滤镜功能之波浪特效示例
2018/01/26 Python
取numpy数组的某几行某几列方法
2018/04/03 Python
Python爬虫将爬取的图片写入world文档的方法
2018/11/07 Python
python实现字符串完美拆分split()的方法
2019/07/16 Python
Python企业编码生成系统总体系统设计概述
2019/07/26 Python
python如何构建mock接口服务
2021/01/28 Python
2013年员工自我评价范文
2013/12/27 职场文书
乡镇网格化管理实施方案
2014/03/23 职场文书
珍惜资源的建议书
2014/08/26 职场文书
企业党员个人自我评价
2014/09/20 职场文书
介绍信范文大全
2015/05/07 职场文书
python源码剖析之PyObject详解
2021/05/18 Python
Windows server 2012搭建FTP服务器
2022/04/29 Servers