站長資訊網
        最全最豐富的資訊網站

        php如何實現數字和字符串id互轉

        php數字和字符串id互轉的實現方法:首先打開相應的PHP代碼文件;然后通過“alphaID(9007199254740989);”方式實現數字和字符串id互轉即可。

        php如何實現數字和字符串id互轉

        推薦:《PHP視頻教程》

        PHP數字和字符串ID互轉函數(類似優酷ID)

        不知道你注意了沒有,類似優酷、騰訊視頻等其他視頻鏈接似乎類似這樣的

        代碼如下:

        http://v.youku.com/v_show/id_XNjA5MjE5OTM2.html

        注意id_xxx那段,是不是看不懂了,但你無可否認這個就是id,這不國外的一位牛人早在09年就寫了針對PHP/Python/Javascript/Java/SQL的生成方法,可見我現在是多么的落伍,下面我把代碼貼出來,希望分享精神永存。

        代碼如下:

        <?php /**   * @author   Kevin van Zonneveld <kevin@vanzonneveld.net>  * @author   Simon Franz  * @author   Deadfish  * @copyright 2008 Kevin van Zonneveld (http://kevin.vanzonneveld.net)  * @license   http://www.opensource.org/licenses/bsd-license.php New BSD Licence  * @version   SVN: Release: $Id: alphaID.inc.php 344 2009-06-10 17:43:59Z kevin $  * @link   http://kevin.vanzonneveld.net/  *  * @param mixed   $in      String or long input to translate  * @param boolean $to_num  Reverses translation when true  * @param mixed   $pad_up  Number or boolean padds the result up to a specified length  * @param string  $passKey Supplying a password makes it harder to calculate the original ID  *  * @return mixed string or long  */ function alphaID($in, $to_num = false, $pad_up = false, $passKey = null) {   $index = "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";   if ($passKey !== null) {       // Although this function's purpose is to just make the       // ID short - and not so much secure,       // with this patch by Simon Franz (http://blog.snaky.org/)       // you can optionally supply a password to make it harder       // to calculate the corresponding numeric ID         for ($n = 0; $n<strlen($index); $n++) {           $i[] = substr( $index,$n ,1);       }         $passhash = hash('sha256',$passKey);       $passhash = (strlen($passhash) < strlen($index))           ? hash('sha512',$passKey)           : $passhash;         for ($n=0; $n < strlen($index); $n++) {           $p[] =  substr($passhash, $n ,1);       }         array_multisort($p,  SORT_DESC, $i);       $index = implode($i);   }     $base  = strlen($index);     if ($to_num) {       // Digital number  < 0) {               $out -= pow($base, $pad_up);           }       }       $out = sprintf('%F', $out);       $out = substr($out, 0, strpos($out, '.'));   } else {       // Digital number  -->>  alphabet letter code       if (is_numeric($pad_up)) {           $pad_up--;           if ($pad_up > 0) {               $in += pow($base, $pad_up);           }       }         $out = "";       for ($t = floor(log($in, $base)); $t >= 0; $t--) {           $bcp = bcpow($base, $t);           $a   = floor($in / $bcp) % $base;           $out = $out . substr($index, $a, 1);           $in  = $in - ($a * $bcp);       }       $out = strrev($out); // reverse   }     return $out; }

        使用舉例

        代碼如下:

        <?php alphaID(9007199254740989);

        執行結果將被返回“fE2XnNGpF”,我們可以把它認為是加密,進行反解密則

        代碼如下:

        <?php alphaID('fE2XnNGpF', true);

        那么就轉換成真實的數字“9007199254740989”。方法還可以支持使用key進行加密,使得別人無法解得你真實的ID。

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 99国产精品无码| 久久精品国产精品青草| 国产日韩精品欧美一区喷水| 国产精品午夜无码AV天美传媒| 久久精品国产亚洲av日韩| 欧美精品三区| 91亚洲国产成人久久精品| 久久亚洲精精品中文字幕| 久久精品无码专区免费| 中国精品videossex中国高清| 国产精品亚洲日韩欧美色窝窝色欲 | 国产成人久久精品二区三区| 国产精品v片在线观看不卡| 亚洲精品无码永久在线观看你懂的| 久久99精品国产麻豆蜜芽| 亚洲精品国产成人99久久| 国产成人精品日本亚洲直接| 国产精品亚洲一区二区三区在线| 亚洲av永久无码精品古装片 | 2024国产精品极品色在线| 久久精品亚洲一区二区三区浴池| 午夜精品久久影院蜜桃| 久99久无码精品视频免费播放| 国产精品国产AV片国产| 777欧美午夜精品影院| 久久精品九九亚洲精品天堂| 国产精品日韩欧美制服| jizzjizz国产精品久久| 精品久久人妻av中文字幕| 久久夜色精品国产噜噜噜亚洲AV | 亚洲国产精品一区二区第一页免 | 你懂的国产精品| 精品少妇一区二区三区视频| 97精品一区二区视频在线观看| 国内少妇偷人精品视频免费 | 99久久精品免费看国产一区二区三区 | 亚洲精品你懂的在线观看| 亚洲精品美女久久777777| 亚洲精品成人网站在线观看 | 久久99亚洲综合精品首页 | 久久激情亚洲精品无码?V|