php中的uniqid是一个根据当前时间生成唯一值(ID)的函数,接下来的这篇文章我们就来详细介绍php中uniqid函数生成唯一的id的方法。
php中的uniqid虽然是生成唯一的值,但是因为是基于当前时间以微秒同时在多个服务器,所以当运行uniqid时可能会产生相同的值。
此问题可以通过应用前缀(prefix)指定一个参数从而避免。它是使用rand函数为前缀指定一个随机值。
此外,它可用于上传图像和文件,例如在保存上传文件时生成文件名。
注意,uniqid容易受到密码系统的攻击,因此不要将其用作密码!
uniqid的使用方法
第一个参数是前缀。
第二个参数指定是否增加要生成的字符数的true/false。默认情况下,第二个参数为false,生成的字符数为13个字符。
我们来看uniqid具体的写法
1、确认由于第一引数的有无而不同。
echo uniqid(); // 生成13个字符的字符串 echo uniqid(""""); // 指定参数为空,返回的字符串长度也为13 echo uniqid(""prefix_""); // 生成13个字符的字符串输出到“prefix_”
2、设置第二个参数
echo uniqid("""", false); //生成13个字符的字符串 echo uniqid(""prefix_"", false); // 在“prefix_”之后,输出由13个字符生成的字符串 echo uniqid("""", true); // 生成23个字符的字符串 echo uniqid(""prefix_"", true); // 在“prefix_”之后,输出由23个字符生成的字符串
3、考虑在多个服务器上并发执行
echo uniqid(rand().'_'); // 在“rand()_”之后输出由13个字符生成的字符串
本篇文章到这里就全部结束了,更多精彩内容大家可以关注php中文网其他栏目教程!!!
以上是如何使用php中uniqid函数生成唯一的id的详细内容。更多信息请关注PHP中文网其他相关文章!