$hash = sha1(rand().microtime());
我打算存储在数据库$哈希值。(产生唯一的哈希)
如果我一次又一次输入一个字符串到Sha1()
它会产生相同的散列。但是,如果我输入它microtime()
它返回当前的Unix时间戳与微秒 - 它保证所有未来呼叫(当前时间将增加)不同的散列。我在这里假定未来的呼叫是在前一次呼叫之后至少1分钟的时间内对此功能进行的呼叫?
你会说什么?
我知道我可以通过简单地检查这个哈希是否已经存在于数据库表中来检查唯一性,但是我只是想知道是否可以像上面那样使用它的独特性。
为什么不直接使用AUTO_INCREMENT列?用时间戳散列替换现有功能有什么意义? – 2012-08-06 09:40:43
我需要一些比普通数字更复杂的外观。 – user1421214 2012-08-06 09:41:52
你说你需要唯一的号码,AUTO_INCREMENT是唯一的解决方案。然后你说你实际上需要一些“复杂的外观”。这是非常令人沮丧:)) – 2012-08-06 09:51:48