如何生成像Pinterest一样的唯一18位数的帖子ID?

时间:2014-05-08 14:42:25

标签: php unique pinterest

我想创建一个包含随机唯一帖子ID而非自动增量帖子ID的帖子 我发现,对于Pinterest中的每一个新帖子,它都有一个独特的18位数的帖子ID,例如

http://www.pinterest.com/pin/521432463078873423/

这个18位数是多少?如何在创建新帖子时在php中生成此数字?

谢谢!

1 个答案:

答案 0 :(得分:1)

此链接中的第三个选项允许您在创建GUID时指定长度。顺便说一句,谷歌充满了“Php如何创建GUID”的结果。

http://phpgoogle.blogspot.com/2007/08/four-ways-to-generate-unique-id-by-php.html

<?php

//set the random id length 
$random_id_length = 18; 

//generate a random id encrypt it and store it in $rnd_id 
$rnd_id = crypt(uniqid(rand(),1)); 

//to remove any slashes that might have come 
$rnd_id = strip_tags(stripslashes($rnd_id)); 

//Removing any . or / and reversing the string 
$rnd_id = str_replace(".","",$rnd_id); 
$rnd_id = strrev(str_replace("/","",$rnd_id)); 

//finally I take the first 18 characters from the $rnd_id 
$rnd_id = substr($rnd_id,0,$random_id_length); 

echo "Random Id: $rnd_id" ;
echo "<br>";

?>