生成未使用的牌照

时间:2013-07-04 17:54:29

标签: php mysql logic

对于我正在进行的多人游戏,我需要能够为玩家创造车辆。每辆车都需要一个完全独特的车牌。

车辆详细信息存储在名为“车辆”的MySQL表中,车牌位于“车牌”栏中。我想生成一个随机牌照(三个字母数字字符,后跟一个空格,后跟另外三个字母数字字符),与表格中的任何一个不匹配。

但是,我不知道怎么做。我想过使用while循环并且不断重新生成一个新的牌,直到该盘子的SELECT查询返回0行但这看起来效率低 - 是否有更好的方法?

1 个答案:

答案 0 :(得分:3)

你的方法应该没问题。该计划中有超过20亿个可能的牌照,数据库只有几千个。因此重复板数的可能性非常小。第一个查询几乎总是确认板号是唯一的,如果不是,则第二个查询将是唯一的。如果你不得不做3个查询,我会非常非常惊讶。

可能的车牌数量为:36 6 = 2,176,782,336