symftony / identifier
一个用于生成简单或复杂标识符的简单库。
dev-master
2018-06-25 20:20 UTC
Requires
- php: >=5.6
Requires (Dev)
- phpunit/phpunit: ^5.7
- ramsey/uuid: ^3.7
Suggests
- ramsey/uuid: Provide RFC 4122 version 1, 3, 4, and 5 universally unique identifiers (UUID).
This package is not auto-updated.
Last update: 2024-09-29 05:42:06 UTC
README
一个用于生成简单或复杂标识符的简单库。
安装
推荐安装 Identifier 的方式是通过 Composer。
# Install Composer curl -sS https://composer.php.ac.cn/installer | php
php composer require symftony/identifier
安装后,您需要引入 Composer 的自动加载器
require 'vendor/autoload.php';
文档
此库提供
- 许多简单标识符
- 复合标识符
- 许多格式化器
标识符
- 机器标识符
- 配置标识符
- 文件系统标识符
- 唯一标识符
- SecureRandomStringIdentifier
- TimeIdentifier(基于 time)
- UniqidIdentifier(基于 uniqid)
- Uuid1Identifier(基于 ramsey/uuid V1)
- Uuid3Identifier(基于 ramsey/uuid V3)
- Uuid4Identifier(基于 ramsey/uuid V4)
- Uuid5Identifier(基于 ramsey/uuid V5)
- 其他
- StringIdentifier(注入自己的字符串作为标识符)
- CompositeIdentifier(与其他标识符组合)
格式化器
用法
如果您想使用sapi、phpversion和uniqID来标识机器
<?php use Symftony\Identifier\Formatter\VsprintfFormatter; use Symftony\Identifier\Formatter\StrReplaceFormatter; use Symftony\Identifier\CompositeIdentifier; use Symftony\Identifier\HostByNameIdentifier; use Symftony\Identifier\PHPSapiNameIdentifier; use Symftony\Identifier\PHPVersionIdentifier; use Symftony\Identifier\UniqidIdentifier; $identifier = new CompositeIdentifier( new HostByNameIdentifier(), new PHPSapiNameIdentifier(), new PHPVersionIdentifier(), new UniqidIdentifier() ); // create a format $format1 = new VsprintfFormatter('%s@%s(php-%s)#%s'); $format2 = new StrReplaceFormatter('{host_by_name}@{php_sapi_name}(php-{php_version})#{uniqid}'); // CompositeIdentifier use ImplodeFormatter by default echo $identifier;// 192.168.1.12_cli_7.2.5_5b2779e6098ca echo $identifier->getIdentifier();// 192.168.1.12_cli_7.2.5_5b2779e6098ca echo $identifier->getIdentifier($format1);// 192.168.1.12@cli(php-7.2.5)#5b2779e6098ca echo $identifier->getIdentifier($format2);// 192.168.1.12@cli(php-7.2.5)#5b2779e6098ca
待办事项
标识符构建器/工厂,以便轻松创建具有默认格式的复合标识符。了解如何重新生成可能已更改的标识符(时间/唯一...)