microtime函数
描述:返回当前Unix时间戳和微秒数
语法:mixed microtime( [ bool $get_as_float ] )
//直接输出 echo microtime(); //得到的是 如:0.26672100 1585622985 前面是当前微秒数,后面是正常时间戳,中间以空格分隔开 //如果带有参数(布尔型参数) echo microtime(true); //输出结果:1585623020.7408 刚才的微秒数就会以浮点数的形式表现在原有的时间戳之后
浮点数太长可进行格式化操作
round($float,3)表示保留到小数点后三位
uniqid函数
描述:生成唯一ID
语法:string uniqid( [ string $prefix = " " [, bool $more_entropy = false ]] ) 都是可选参数
第一个参数是前缀
echo uniqid("haha"); //结果就是 haha......(后面是随机生成的)
但是我们这个前缀是不变的话没有意义,所以我们可以
uniqid( microtime() );
uniqid( microtime() . mt_rand() );
这个时候我们会发现它会有时间戳和随机数+随机ID,但是长度是不固定的
这时候我们可以使用uuid(产生唯一ID)
uuid 8-4-4-4-12的形式 正好是32位 (MD5是32位的)
echo md5(uniqid(microtime() . mt_rand())),'<br>';
这就产生一个UUID的形态,这样可以保证文件名即使在分布式环境下是唯一的 有些网站也会用网卡的mac地址,这个也是唯一的;