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

yipeiwu_com7年前PHP代码库
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调用MsSQL存储过程使用内置RETVAL获取过程中的return值

【PHP代码】复制代码 代码如下: $stmt = mssql_init('P__Global_Test', $conn) or die("initialize stored...

php 文件上传类代码

复制代码 代码如下: <?php /** * 文件上传类 */ class uploadFile { public $max_size = '1000000';//设置上传文件大小...

PHP实现通过strace定位故障原因的方法

本文实例讲述了PHP实现通过strace定位故障原因的方法。分享给大家供大家参考,具体如下: 俗话说:不怕贼偷,就怕贼惦记着。在面对故障的时候,我也有类似的感觉:不怕出故障,就怕你不知道...

PHP实现图的邻接矩阵表示及几种简单遍历算法分析

本文实例讲述了PHP实现图的邻接矩阵表示及几种简单遍历算法。分享给大家供大家参考,具体如下: 在web开发中图这种数据结构的应用比树要少很多,但在一些业务中也常有出现,下面介绍几种图的寻...

PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法

本文实例讲述了PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法。分享给大家供大家参考,具体如下: 很多用户不知道如何复制flash地址,只能在程序中帮他们替换了...