eig/uuid

允许轻松生成和分配事件源系统的UUID

2.5.2 2022-12-13 20:29 UTC

This package is auto-updated.

Last update: 2024-09-14 00:08:42 UTC


README

Build Status Latest Stable Version Coverage Status License StyleCI Total Downloads Latest Unstable Version

支持的PHP版本

  • 7.2
  • 7.3
  • 7.4
  • 8.0

版本支持

描述

这是一个用于轻松使用Ramsey\UUID包的包装包。目前,该包根据RFC 4122生成版本4的UUID。

此包提供两种生成UUID的方法。

  1. 具有generate方法的静态外观UUID。
  2. AssignUUID特质,默认为类变量$code,或接受类变量的字符串名称以将UUID分配给该变量。

静态方法示例

use eig\UUID;

class Example {
    
    protected $id;
    
    public function __construct()
    {
        $this->id = UUID::generate();
    }
}

AssignUUID特质示例

use eig\UUID\AssignUUID;

class Example
{
    use AssignUUID;

    /**
     * @var
     */
    protected $id;

    /**
     * Example constructor.
     */
    public function __construct ()
    {
        $this->assignUUID();
    }

    /**
     * getID
     * @return mixed
     */
    public function getID()
    {
        return $this->id;
    }
}

或者使用除$id之外的其他类变量

use eig\UUID\AssignUUID;

/**
 * Class AlternateFieldExample
 * @package eig\UUID
 * @license MIT
 * @author James Johnson
 * @author Excellent InGenuity LLC
 */
class AlternateFieldExample
{
    use AssignUUID;

    /**
     * @var
     */
    protected $alternateID;

    /**
     * AlternateFieldExample constructor.
     */
    public function __construct ()
    {
        $this->assignUUID('alternateID');
    }

    /**
     * getAlternateID
     * @return mixed
     */
    public function getAlternateID()
    {
        return $this->alternateID;
    }
}