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

前端之家收集整理的这篇文章主要介绍了php中的Base62类(适用于数值转字符串)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

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),-7);
}
}

用法

代码如下:
$str = 1;
$object = new Base62();
echo $object->base62_encode($str) . "\n";
echo $object->base62_decode($object->base62_encode($str)) . "\n";

猜你在找的PHP相关文章