一、UUID描述
1.php的uuid模块 UUID 全称是 Universally unique identifier,它是一种识别符,使用任意的计算机都可以生成,不需要一个中央数据库进行管理,即可以保证几乎没有重复的几率。而 UUID 的值域之大,据说给世界上每一粒沙子分配一个 UUID,也不会有重复的。
二、安装
1. 下载uuid模块源码 网站:https://pecl.php.net/package/uuid
2.下载源码 执行:wget http://pecl.php.net/get/uuid-1.0.4.tgz
3.#解压 执行:tar -zxf uuid-1.0.4.tgz
4.编译安装前,我们需要先装一下libuuid-devel这个库,yum install -y libuuid-devel
5.生成编译环境(将下面命令中$PHPPATH替换为你的php所在目录目录) 执行:$PHPPATH/bin/phpize
6.#检查编译所需的依赖配置 执行:./configure --with-php-config=/usr/local/php/bin/php-config 必须指定在检查编译配置的时候
7.编译安装 :make && make install
8.编译完成,会生成uuid.so,具体目录请看下图Installing shared extensions
9.配置php.ini 添加extension=uuid.so
10.重启php服务(请根据你当前的环境替换下面的命令重启)
执行:
a. killall php-fpm (一定要执行,不然会报错)
如图:
b. /usr/local//php/sbin/php-fpm -c /usr/local/php/lib/php.ini(此处用 service php-fpm restart无效)
验证是否添加成功
12使用方法:
function create_uuid($prefix = ""){ //可以指定前缀 if(function_exists("uuid_create")) { return uuid_create(); } else { $str = md5(uniqid(mt_rand(), true)); $uuid = substr($str,0,8) . '-'; $uuid .= substr($str,8,4) . '-'; $uuid .= substr($str,12,4) . '-'; $uuid .= substr($str,16,4) . '-'; $uuid .= substr($str,20,12); return $prefix . $uuid; } } echo create_uuid();