unid - PHP的唯一ID生成
GPL
跨平台
C/C++
软件简介
unid 是一个可以生成唯一ID的php扩展,此扩展基于 Twitter Snowflake 算法。有兴趣可以了解一下这个算法:
https://github.com/twitter/snowflake
功能列表:
// 1) Get the next unique ID.
string unid_next_id(void);
// 2) Change unique ID to time stamp.
int unid_get_time(string id);
// 3) Change unique ID to worker id.
array unid_get_worker_id(string id);
示例:
<?php
$id = unid_next_id();
echo $id;
$time = unid_get_time($id);
echo 'date time is: ' . date('Y-m-d H:i:s', $time);
$worker_id = unid_get_worker_id();
echo 'worker id is: ' . $worker_id;
?>
$ cd ./unid
$ phpize
$ ./configure
$ make
$ sudo make install
php.ini 配置项:
[unid]
unid.datacenter = int
unid.twepoch = uint64