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作的文本留言本的例子(六)
Oct 09 PHP
与数据库连接
Oct 09 PHP
mysql中存储过程、函数的一些问题
Feb 14 PHP
php 方便水印和缩略图的图形类
May 21 PHP
php 注册时输入信息验证器的实现详解
Jul 05 PHP
php获取服务器端mac和客户端mac的地址支持WIN/LINUX
May 15 PHP
Laravel 5框架学习之Blade 简介
Apr 08 PHP
简单谈谈php中的unicode和utf8编码
Jun 10 PHP
Laravel 中获取上一篇和下一篇数据
Jul 27 PHP
PHP获取中国时间(上海时区时间)及美国时间的方法
Feb 23 PHP
PHP实现打包zip并下载功能
Jun 12 PHP
thinkPHP+LayUI 流加载实现功能
Sep 27 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
php strcmp使用说明
2010/04/22 PHP
Javascript的IE和Firefox兼容性汇编
2006/07/01 Javascript
JS getStyle获取最终样式函数代码
2010/04/01 Javascript
三级下拉菜单的js实现代码
2011/05/23 Javascript
jQuery使用ajaxSubmit()提交表单示例
2014/04/04 Javascript
将字符串中由空格隔开的每个单词首字母大写
2014/04/06 Javascript
js控制容器隐藏出现防止样式变化的两种方法
2014/04/25 Javascript
使用JS实现jQuery的addClass, removeClass, hasClass函数功能
2014/10/31 Javascript
js 操作符汇总
2014/11/08 Javascript
node中socket.io的事件使用详解
2014/12/15 Javascript
JavaScript实现找质数代码分享
2015/03/24 Javascript
Google 地图API Map()构造器详解
2016/08/06 Javascript
js正则表达式验证密码强度【推荐】
2017/03/03 Javascript
深入探究angular2 UI组件之primeNG用法
2017/07/26 Javascript
Node.js利用console输出日志文件的方法示例
2018/04/27 Javascript
promise和co搭配生成器函数方式解决js代码异步流程的比较
2018/05/25 Javascript
JS继承实现方法及优缺点详解
2020/09/02 Javascript
[01:25:09]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第二场
2014/05/24 DOTA
在 Django/Flask 开发服务器上使用 HTTPS
2014/07/03 Python
Python Sleep休眠函数使用简单实例
2015/02/02 Python
Python实现比较两个文件夹中代码变化的方法
2015/07/10 Python
Python中Scrapy爬虫图片处理详解
2017/11/29 Python
python中的二维列表实例详解
2018/06/19 Python
对Pandas MultiIndex(多重索引)详解
2018/11/16 Python
Python面向对象之Web静态服务器
2019/09/03 Python
浅谈在JupyterNotebook下导入自己的模块的问题
2020/04/16 Python
python3 使用ssh隧道连接mysql的操作
2020/12/05 Python
pyx文件 生成pyd 文件用于 cython调用的实现
2021/03/04 Python
ROSEFIELD手表荷兰官方网上商店:北欧极简设计女士腕表品牌
2018/01/24 全球购物
荷兰浴室和卫浴网上商店:Badkamerxxl.nl
2020/10/06 全球购物
知识竞赛主持词
2014/03/26 职场文书
四风问题班子对照检查材料
2014/09/27 职场文书
2014幼儿园中班工作总结
2014/11/10 职场文书
4S店收银员岗位职责
2015/04/07 职场文书
SpringBoot系列之MongoDB Aggregations用法详解
2022/02/12 MongoDB
基于Python实现西西成语接龙小助手
2022/08/05 Golang