php 生成短网址原理及代码
发布:smiling 来源: PHP粉丝网 添加日期:2020-08-29 20:19:25 浏览: 评论:0
将原网址做crc32校验,得到校验码,使用sprintf将校验码转为无符号数字,详细步骤请看本文
php 生成短网址
原理:
1.将原网址做crc32校验,得到校验码。
2.使用sprintf('%u') 将校验码转为无符号数字。
3.对无符号数字进行求余62操作(大小写字母+数字等于62位),得到余数后映射到62个字符中,将映射后的字符保存。(例如余数是10,则映射的字符是A,0-9对应0-9,10-35对应A-Z,35-62对应a-z)
4.循环操作,直到数值为0。
5.将所有映射后的字符拼接,就是短网址后的code。
代码如下:
- /** 生成短网址
- * @param String $url 原网址
- * @return String
- */
- function dwz($url){
- $code = sprintf('%u', crc32($url));
- $surl = '';
- while($code){
- $mod = $code % 62;
- if($mod>9 && $mod<=35){
- $mod = chr($mod + 55);
- }elseif($mod>35){
- $mod = chr($mod + 61);
- }
- $surl .= $mod;
- $code = floor($code/62);
- } //phpfensi.com
- return $surl;
- }
Tags: php生成短网址
相关文章
- ·PHP生成短网址的3种方法代码实例(2021-03-17)
- ·PHP生成短网址的思路以及实现方法的详解(2021-11-14)
- ·PHP利用DWZ.CN服务生成短网址(2021-12-10)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)