![]() |
1
0
如果他们超过3公里怎么办?MySQL可以处理大量的事情,不用担心。只用两张桌子,比如:
然后,您可以获取ID的标识符,获取标识符所属的用户,等等。 |
![]() |
2
3
也许你问错了问题。您不应该处理这种大小的标识符。答案是使用更好的标识符生成算法处理较小的标识符。您的表索引将感谢您。 所以你应该问的问题是: 如何创建短但唯一的标识符? 答案如下: 您应该使用加密的安全哈希算法(例如 SHA-1 )要生成标识符,或者只需使用UUID实现即可。PHP有一个名为UUID的实现 uniqid (可能需要编译),所以真的不需要自己滚动。这两种方法都为您提供了一个比您正在使用的方法要短得多的ID,并且都可以“保证”一个巨大样本大小的唯一性(而且比您的算法更有效)。当我说短一点的时候,我说的最多是16-64个字节(sha-1生成40个字节的哈希)。
如果您使用sha-1散列路由,方法是散列一些随机的(但对于用户输入是唯一的),比如
|
![]() |
3
0
首先,看看洛伦·西格尔的答案,了解一些好的想法。 第二,为什么要使用随机的方法来确保唯一性?随机值不能保证一致性——即使它们可以使发生碰撞的可能性非常小。 在大多数情况下,关系数据库可以解决您的问题而不需要任何技巧。为了有效地解决这类问题,设计了索引和组合键。 如果你需要一个单一的值来唯一地识别某个东西,那就去看看洛伦提到的那些没有意义的东西。 |
![]() |
Jacco · 未能格式化我的日期以在php中正确工作 1 年前 |
![]() |
jay ram · 如何在URL核心php中从API获取JSON? 1 年前 |
|
Ishwarya A · php电子表格在浏览器中显示多张excel 1 年前 |