$hash = sha1(rand().microtime());
我打算将 $hash 存储在数据库中。
如果我一次又一次地输入一个字符串,Sha1()
它会产生相同的哈希值。但是如果我输入它,它microtime()
会返回当前的 Unix 时间戳,以微秒为单位 - 它会保证所有未来调用的哈希值都不同(因为当前时间会增加)。我在这里假设将来的调用是对该函数的调用,在上一次调用之后至少有 1 分钟的差异?
你打算说什么?
我知道我可以通过简单地检查这个哈希是否已经存在于数据库表中来检查唯一性,但我只是想知道在上面使用时我是否可以假设它是唯一的。