• 雪花算法
    • 用途
    • 如何使用
    • 核心对象方法
      • make
      • unmake

    雪花算法

    用途

    生成唯一编号

    如何使用

    1. <?php
    2. /**
    3. * Created by PhpStorm.
    4. * User: root
    5. * Date: 19-1-9
    6. * Time: 上午10:10
    7. */
    8. require './vendor/autoload.php';
    9. $str = \EasySwoole\Utility\SnowFlake::make(1,1);//传入数据中心id(0-31),任务进程id(0-31)
    10. var_dump($str);
    11. var_dump(\EasySwoole\Utility\SnowFlake::unmake($str));
    12. /**
    13. * 输出结果:
    14. * int(194470364728922112)
    15. * object(stdClass)#3 (4) {
    16. * ["timestamp"]=>
    17. * int(1532127766018)
    18. * ["dataCenterID"]=>
    19. * int(1)
    20. * ["workerID"]=>
    21. * int(1)
    22. * ["sequence"]=>
    23. * int(0)
    24. * }
    25. */

    核心对象方法

    核心类:EasySwoole\Utility\SnowFlake

    make

    生成基于雪花算法的随机编号

    • mixed $dataCenterID 数据中心
    • mixed $workerID 任务进程I

    static function make($dataCenterID = 0, $workerID = 0)

    unmake

    反向解析雪花算法生成的编号

    • mixed $snowFlakeId 编号

    static function unmake($snowFlakeId)