短縮 URL、特に人気を博した Weibo 上のアプリケーションは誰もがよく知っていますが、実際、この機能を実装するのは非常に簡単です。
<?php /** * 短网址 */ 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; ?>
上記の結果出力:
ウェブサイト: www.qttc.net
短縮 URL: SwOOy3
短縮 URL はデータベースに保存され、マッピング関係を作成できます。 nginxの書き換えルールと合わせて、短縮URLの生成、復元、ジャンプ機能を実現できます。