2013-10-08 53 views
-3

9GAG具有獨特的短毛坯:生成後的條目(如9GAG)

http://9gag.com/gag/amXB20o

我想的一樣,是這樣的:

http://mysite.com/post/ {shortslug}

我怎樣才能生成短(8-10個字符?)獨特 slu for爲每個職位,當我拯救他們?

非常感謝您的幫助。

編輯:我雖然關於使用md5的Id,但散列太長。

+2

php的'uniqid()'函數可能工作。生成唯一ID,然後將其縮短爲字符串長度,但在保存之前,檢查ID是否已經存在於數據庫中,如果不存在,則保存它,否則,生成一個新的ID並重復。 – WebNovice

+1

您是否確實需要使用隨機字母數字字符作爲帖子標識符而不是標準的搜索引擎友好的URL;或者你只是想要做,因爲該網站做到了? –

+3

你做了什麼研究?因爲有很多這方面的話題。 [示例](http://kvz.io/blog/2009/06/10/create-short-ids-with-php-like-youtube-or-tinyurl/) – Jelmer

回答

0
$key = substr(md5(rand(1,999999)), 0, 10); 
echo $key; 

然後檢查是否存在,如果它不只是產生一個又一個

在一個搜索引擎優化的說明,我將有網址爲www.example.com/post/5245/this-is-an-example-title/,只是使用的ID在數據庫中自動遞增