生成唯一的ID
来源:互联网 发布:网络安全法是为了维护 编辑:程序博客网 时间:2024/06/03 01:37
uniqid() 返回一个带前缀的唯一标识基于当前时间精确到微秒。
只是说基于当前时间,但是没有说明与当前时间的关系如何。
echo uniqid();可以看到uniqid始终是一个不断变化的长度为13的十六进制数。
<?php
echo hexdec(uniqid())/(time()+microtime());
?>
输出基本上在1048576左右。
可以断定,uniqid就是当前时间精确到微秒再乘以1048576(2的20次幂)最后转换为十六进制得到的。
知道uniqid与time的关系后uniqid就可以有更广泛的用途了,比如用文本论坛可以用uniqid作为帖子的文件名。
只是说基于当前时间,但是没有说明与当前时间的关系如何。
echo uniqid();可以看到uniqid始终是一个不断变化的长度为13的十六进制数。
<?php
echo hexdec(uniqid())/(time()+microtime());
?>
输出基本上在1048576左右。
可以断定,uniqid就是当前时间精确到微秒再乘以1048576(2的20次幂)最后转换为十六进制得到的。
知道uniqid与time的关系后uniqid就可以有更广泛的用途了,比如用文本论坛可以用uniqid作为帖子的文件名。
做在帖子索引中,可以很方便的按时间查找帖子。
提示和注释
注释:由于基于系统时间,通过该函数生成的 ID 不是最佳的。如需生成绝对唯一的 ID,请使用 md5() 函数(请在字符串函数参考中查找)。
- 生成唯一的ID
- PHP----生成唯一的ID
- 生成一个唯一的id
- 生成一个唯一的Id
- 如何生成一个唯一的ID值
- 数据库中生成唯一的ID
- iOS 如何生成唯一的设备ID
- 生成全局唯一的ID,java 中
- 全局唯一ID的生成方式
- PHP 随机生成唯一的ID
- 全局唯一ID的生成策略对比
- 用MD5生成唯一性的id
- 记一次生成唯一ID的问题
- 服务器唯一标识 id 的生成方法
- Oracle数据库,唯一标识ID的生成
- Oracle唯一主键ID的生成
- 分布式系统中唯一ID的生成
- C# 生成唯一ID
- Java加解密密和数字签名
- 领袖人物的16个主要特征
- c++中的虚函数
- 从PDA到Android 智能手机的十年进化论
- 使用X.509数字证书加密解密实务(一)-- 证书的获得和管理
- 生成唯一的ID
- 虚析构函数的作用
- 一个有趣的python排序模块:bisect
- android中Bitmap对象怎么保存为文件?
- Android 传感器(Sensor)API教程 (一) 常用方法简介
- 制作临时证书为ActiveX控件签名
- 安徽省高中继续教育点击助手
- dspace批量导入编码问题
- 转:VC MFC菜单栏(CMenu)控件(菜单栏字体大小的更改。。。等等)