2011-02-08 61 views
0

我想使具有此URL格式的URL縮短服務: http://myurlshortner.com/(編號)從自定義位值符號生成唯一ID的URL縮短

ID是獨特的,產生從下面的位值符號序列/系統/系列:

0 
1 
2 
. 
. 
. 
9 
a 
b 
c 
. 
. 
. 
z 

例如:http://myurlshortner.com/1b6z

爲節省錄入數據庫,我要讓ID主鍵(或唯一的字段)與每一位新進入遞增,並遵循上述順序。我怎樣才能做到這一點?

對於數據的存儲,我將使用Amazon的SimpleDB。所以不會有任何存儲過程或其他DBMS功能,比如我可以使用的MySQL。

這正好(幾乎)像URL如何縮短如http://tinyurl.comhttp://bit.ly的工作。

...和我在PHP編碼。我希望你能理解我的問題。

回答

1

你可以達到你想要的只是將正常型鹼基10號到座36

基地36什麼用數字0-9,然後字母A-Z。

您可以將其存儲在數據庫中之前進行轉換和使用轉換後的號碼作爲ID,或者只是使用普通的底座10自動遞增,並執行轉換的代碼。

參見:http://php.net/manual/en/function.base-convert.php

php > echo base_convert(123456789, 10, 36); 
21i3v9 
+0

感謝一大堆。 – 2011-02-08 21:07:05