PHP生成短网址示例_源码教程

2018-11-11 建站知识 浏览 手机预览
文章来源:http://www.imtr.cn/html/n213.html

1.将原网址做crc32校验,得到校验码

2.使用sprintf('%u') 将校验码转为无符号数字

3.对无符号数字进行求余62操作(大小写字母+数字等于62位),得到余数后映射到62个字符中,将映射后的字符保存。(例如余数是10,则映射的字符是A,0-9对应0-9,10-35对应A-Z,36-61对应a-z)

4.循环操作,直到数值为0

5.将所有映射后的字符拼接,就是短网址后的code

<?php
    //生成短网址
    function dwzurl($url)
    {
        $code = floatval(sprintf('%u', crc32($url)));
        $surl = '';
        while ($code) {
            $mod = fmod($code, 62);
            if ($mod > 9 && $mod <= 35) {
                $mod = chr($mod + 55);
            } elseif ($mod > 35) {
                $mod = chr($mod + 61);
            }
            $surl .= $mod;
            $code = floor($code / 62);
        }
        return $surl;
    }
	echo dwzurl("http://www.dedecmsok.com");
?>


原文地址:http://www.imtr.cn/html/n213.html
  • 如果你的问题还没有解决,可以点击页面右侧的“ ”,站长收到问题后会尽快回复解决方案到你的邮箱。
  • 创造始于问题,有了问题才会思考,有了思考,才有解决问题的方法,才有找到独立思路的可能。 —— 陶行知