加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > PHP > 正文

php生成短网址|两种实现方式

发布时间:2020-05-25 07:52:05 所属栏目:PHP 来源:互联网
导读:php生成短网址|两种实现方式

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

php生成短网址|两种实现方式
<?php
/**
 * Created by PhpStorm.
 * User: yangyulong/[emailprotected]
 * Date: 2015/5/28
 * Time: 15:55
 */
function shortUrl($url){
    $base32 = array (
        'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0','1','2','3','4','5'
    );

    $hex = md5($url);
    $hexLength = strlen($hex);
    $subHexLen = $hexLength / 8;

    $output = array();
    for ($i = 0; $i < $subHexLen; $i++) {
        //每循环一次取到8位
        $subHex = substr ($hex,$i * 8,8);
        $int = 0x3FFFFFFF & (1 * ('0x'.$subHex));
        $out = '';

        for ($j = 0; $j < 6; $j++) {
            $val = 0x0000001F & $int;
            $out .= $base32[$val];
            $int = $int >> 5;
        }

        $output[] = $out;
    }

    return $output;
}


function shortUrl2($url){
    $result = sprintf("%u",crc32($url));
    $show = '';
    while($result  >0){
        $s = $result % 62;
        if($s > 35){
            $s=chr($s+61);
        }elseif($s>9 && $s<=35){
            $s=chr($s+55);
        }
        $show .= $s;
        $result = floor($result / 62);
    }

    return $show;
}

echo shortUrl2('http://baidu.com');

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读