首页 > Web开发 > 详细

PHP shortURL

时间:2021-07-28 14:32:05      阅读:16      评论:0      收藏:0      [点我收藏+]
<?php

   $table ="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
$table = str_shuffle($table);
//$table = "6Qw7fWXgTjkcordIKLvBstRSD3n904U5e8ZMOPluhJmiNxVyzY12AFGHabpCEq";  //映射表

$e = _10to62("159046587215904658721590465872159046587215904658721590465872", $table);
var_dump($e);
$d = _62to10($e, $table);
var_dump($d);



/**
 * 将十进制转成62进制
 * @param $n
 */
function _10to62($n,$table){

    $res = "";
    while(($a=bcdiv($n, 62)) > 0)
    {
        $res = $table[bcsub($n, bcmul(62, $a))].$res;
        $n = $a;
    }
    $res = $table[bcsub($n, bcmul(62, $a))].$res;
    return $res;
}
 
/**
 * 将 62进制转成10进制
 */
 function _62to10($m,$table){

    $res = 0;
    for($n=strlen($m),$i=$n-1;$i>=0;$i--){
        $res = bcadd($res, bcmul(strpos($table,$m[$n-$i-1]), bcpow(62, $i)));
    }
    return $res;
}

 

PHP shortURL

原文:https://www.cnblogs.com/rxbook/p/15069851.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!