【文件属性】:
文件名称:PHP唯一ID生成扩展Atom.zip
文件大小:9KB
文件格式:ZIP
更新时间:2022-08-05 10:40:33
开源项目
使用Twitter的 Snowflake算法,有兴趣可以了解一下这个算法: https://github.com/twitter/snowflake
php.ini的配置项:
[ukey]
ukey.datacenter = integer
ukey.worker = integer
ukey.twepoch = uint64
datacenter配置项是一个整数, 用于设置数据中心;
worker配置项是一个整数, 用于设置数据中心的机器序号;
twepoch配置项是一个64位的整数, 用于设置时间戳基数, 此值越大, 生成的ID越小;
Atom
Based on the Twitter Snowflake algorithm
PHP unique ID generator
functions list:
1) string atom_next_id(void);
Get the next unique ID.
2) array atom_explain(string ID);
Change unique ID to array includes: timestamp, datacenter id and worker id.
example:
<?php
$id = atom_next_id();
echo $id;
$info = atom_explain($id);
echo date('Y-m-d H:i:s', $info['timestamp']);
?>
install:
$ cd ./atom
$ phpize
$ ./configure
$ make
$ sudo make install
php.ini configure entries:
[atom]
atom.datacenter = integer
atom.worker = intger
atom.twepoch = uint64
标签:Atom
【文件预览】:
atom-master
----shm.c(1001B)
----spinlock.h(192B)
----php_atom.h(3KB)
----EXPERIMENTAL(0B)
----CREDITS(4B)
----atom.php(496B)
----config.m4(2KB)
----atom.c(9KB)
----README.md(618B)
----config.w32(282B)
----spinlock.c(2KB)
----tests()
--------001.phpt(533B)
----shm.h(160B)