短网址相比大家都不陌生吧,特别是微博上的应用更是把它带火了,其实要实现这个功能也很简单。
<?php
/**
* 琼台博客 www.qttc.net
* 短网址
*/
function urlShort($url){
$url= crc32($url);
$result= sprintf("%u", $url);
$sUrl= '';
while($result>0){
$s= $result%62;
if($s>35){
$s= chr($s+61);
} elseif($s>9 && $s<=35){
$s= chr($s+ 55);
}
$sUrl.= $s;
$result= floor($result/62);
}
return $sUrl;
}
$url = 'www.qttc.net';
$sUrl = urlShort($url);
echo '<meta charset="utf-8" />';
echo '网址:'.$url.'<br />';
echo '短网址:'.$sUrl;
?>
Output:
网址:www.qttc.net
短网址:SwOOy3
可以把短网址存入数据库,做一个映射关系。再配合Nginx重写规则就可以实现短网址生成,还原,跳转功能了。