您好!欢迎访问家园网-www.jy.wang!

家园网

uniqid php 重复_如何使用php中uniqid函数生成唯一的id

网络 作者:本站 点击:

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个字符生成的字符串


标签: