php中的Base62类(适用于数值转字符串)


Posted in PHP onAugust 12, 2013

Base62类源码:

class Base62 {    private $string = "vPh7zZwA2LyU4bGq5tcVfIMxJi6XaSoK9CNp0OWljYTHQ8REnmu31BrdgeDkFs";
    public function base62_encode($str) {
        $out = ''; 
        for($t=floor(log10($str)/log10(62)); $t>=0; $t--) {
            $a = floor($str / pow(62, $t));
            $out = $out.substr($this->string, $a, 1); 
            $str = $str - ($a * pow(62, $t));
        }   
        return $out;
    }   
    public function base62_decode($str) {
        $out = 0;
        $len = strlen($str) - 1;
        for($t=0; $t<=$len; $t++) {
            $out = $out + strpos($this->string, substr($str, $t, 1)) * pow(62, $len - $t);
        }   
        return substr(sprintf("%f", $out), 0, -7);
    }   
}

用法:
$str = 1;
$object = new Base62();
echo $object->base62_encode($str) . "\n";
echo $object->base62_decode($object->base62_encode($str)) . "\n";
PHP 相关文章推荐
PHP遍历数组的几种方法
Mar 22 PHP
php 文件上传实例代码
Apr 19 PHP
php实现简单洗牌算法
Jun 18 PHP
用Json实现PHP与JavaScript间数据交换的方法详解
Jun 20 PHP
PHP获取youku视频真实flv文件地址的方法
Dec 23 PHP
PHP连接MSSQL时nvarchar字段长度被截断为255的解决方法
Dec 25 PHP
php将html转成wml的WAP标记语言实例
Jul 08 PHP
解析WordPress中控制用户登陆和判断用户登陆的PHP函数
Mar 01 PHP
thinkPHP基于ajax实现的菜单与分页示例
Jul 12 PHP
IIS 7.5 asp Session超时时间设置方法
Apr 17 PHP
PHP使用mongoclient简单操作mongodb数据库示例
Feb 08 PHP
PHP结合Redis+MySQL实现冷热数据交换应用案例详解
Jul 09 PHP
PHP实现把数字ID转字母ID
Aug 12 #PHP
PHP计算2点经纬度之间的距离代码
Aug 12 #PHP
php读取csv文件后,uft8 bom导致在页面上显示出现问题的解决方法
Aug 10 #PHP
浅析php中常量,变量的作用域和生存周期
Aug 10 #PHP
浅析linux下apache服务器的配置和管理
Aug 10 #PHP
本地机apache配置基于域名的虚拟主机详解
Aug 10 #PHP
php 删除目录下N分钟前创建的所有文件的实现代码
Aug 10 #PHP
You might like
php使用str_replace实现输入框回车替换br的方法
2014/11/24 PHP
php处理静态页面:页面设置缓存时间实例
2017/06/22 PHP
PHP抽象类与接口的区别实例详解
2019/05/09 PHP
PHP PDO和消息队列的个人理解与应用实例分析
2019/11/25 PHP
在IE 浏览器中使用 jquery的fadeIn() 效果 英文字符字体加粗
2011/06/02 Javascript
Ext中下拉列表ComboBox组件store数据格式用法介绍
2013/07/15 Javascript
浅谈jquery事件处理
2015/04/24 Javascript
基于javascript实现图片切换效果
2016/04/17 Javascript
ES6新特性之变量和字符串用法示例
2017/04/01 Javascript
Vue学习笔记进阶篇之单元素过度
2017/07/19 Javascript
JavaScript实现单例模式实例分享
2017/12/22 Javascript
vue2.0 如何把子组件的数据传给父组件(推荐)
2018/01/15 Javascript
浅谈vue引用静态资源需要注意的事项
2018/09/28 Javascript
浅谈layui 表单元素的选中问题
2019/10/25 Javascript
vue使用map代替Aarry数组循环遍历的方法
2020/04/30 Javascript
Vue组件为什么data必须是一个函数
2020/06/11 Javascript
JS如何监听div的resize事件详解
2020/12/03 Javascript
[07:55]2014DOTA2 TI正赛第三日 VG上演推进荣耀DKEG告别
2014/07/21 DOTA
wxpython学习笔记(推荐查看)
2014/06/09 Python
介绍Python的Django框架中的QuerySets
2015/04/20 Python
Python实现比较两个列表(list)范围
2015/06/12 Python
Python3字符串encode与decode的讲解
2019/04/02 Python
Python列表与元组的异同详解
2019/07/02 Python
PyTorch 普通卷积和空洞卷积实例
2020/01/07 Python
使用python执行shell脚本 并动态传参 及subprocess的使用详解
2020/03/06 Python
德国化妆品和天然化妆品网上商店:kosmetikfuchs.de
2017/06/09 全球购物
美国玩具公司:U.S.Toy
2018/05/19 全球购物
伦敦一家领先的精品零售商:IRIS Fashion
2019/05/24 全球购物
咖啡店的创业计划书,让你hold不住
2014/01/03 职场文书
《老山界》教学反思
2014/04/08 职场文书
超市优秀员工获奖感言
2014/08/15 职场文书
党员教师四风自我剖析材料
2014/09/30 职场文书
学校通报表扬范文
2015/05/04 职场文书
十月围城观后感
2015/06/08 职场文书
Vue详细的入门笔记
2021/05/10 Vue.js
关于python类SortedList详解
2021/09/04 Python