可验证的键对象。

v0.1.2 2017-07-05 09:52 UTC

This package is auto-updated.

Last update: 2024-09-16 05:28:45 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License

本软件包提供了可验证的键对象,旨在用作标识符。

目录

安装

使用本软件包的最佳方式是通过Composer

composer require brightnucleus/keys

基本用法

基本 Key

基本 BrightNucleus\Keys\Key 类的使用非常简单,您只需通过构造函数传入您想要用作键的实际值即可实例化它。

示例

<?php namespace Vendor\Package;

use BrightNucleus\Keys\Key;

$key = new Key('my_option');
echo $key;
// Output: 'my_option'

UUID

UUID 是一个 "通用唯一标识符"

要使用 BrightNucleus\Keys\UUID 类,您应该通过其中一个命名构造函数实例化它

  • UUID::uuid1():生成版本 1(基于时间的)UUID 对象。
  • UUID::uuid3($namespace, $name):生成版本 3(基于名称且使用 MD5 哈希)的 UUID 对象。
  • UUID::uuid4():生成版本 4(随机)的 UUID 对象。
  • UUID::uuid5($namespace, $name):生成版本 5(基于名称且使用 SHA1 哈希)的 UUID 对象。

示例

<?php namespace Vendor\Package;

use BrightNucleus\Keys\UUID;

$randomUUID = UUID::uuid4();
echo $randomUUID;
// Output: random UUID, in a format similar to '123e4567-e89b-12d3-a456-426655440000'

$hashedUUID = UUID::uuid5(UUID::NAMESPACE_URL, 'https://www.brightnucleus.com');
echo $hashedUUID;
// Output: '63ab6383-0ad4-559a-b16b-afcec9cc77e9'

高级用法

您可以通过扩展 BrightNucleus\Keys\Key 类来提供您自己的唯一标识符方案。确保自定义实现中的验证和序列化功能按预期工作。

示例

<?php namespace Vendor\Package;

use BrightNucleus\Keys\Key;

class TimestampedKey extends Key
{

    /**
     * Initialize a new TimestampedKey object.
     */
    public function __construct()
    {
        $dateTime = new \DateTimeImmutable();
        $this->data = $dateTime->getTimestamp();
    }
}

$key = new TimestampedKey();
echo $key;
// Output: Unix timestamp value in the format '1499248161';

贡献

欢迎所有反馈/错误报告/拉取请求。

许可

版权所有(c)2017 Alain Schlesser,Bright Nucleus

此代码根据 MIT 许可证授权。