pragmarx / random
创建随机字符、数字、字符串
v0.2.2
2017-11-21 05:26 UTC
Requires
- php: >=7.0
Requires (Dev)
- fzaninotto/faker: ~1.7
- phpunit/phpunit: ~6.4
- pragmarx/trivia: ~0.1
- squizlabs/php_codesniffer: ^2.3
Suggests
- fzaninotto/faker: Allows you to get dozens of randomized types
- pragmarx/trivia: For the trivia database
README
生成随机字符串、数字、字节、模式等
功能
它生成加密的伪随机字节(使用 random_bytes()
和 random_int()
),以创建
- 字符串
- 数字(字符串或整数)
- 大写、小写和混合大小写
- 前缀和后缀随机字符串
- 十六进制
- 正则表达式模式 ([abcd], [aeiou], [A-Z0123], [0-9a-f])
- 原始字符串,返回
random_bytes()
生成的任何内容
Faker
如果您已安装 Faker,它将回退到 Faker,为您提供随机姓名、日期、城市、电话等功能。
安装
通过 Composer
$ composer require pragmarx/random
用法
基本数组用法
$this->random = new PragmaRX\Random\Random(); $this->random->get(); /// will generate an alpha string which is the same of $this->random->alpha()->get();
应提供 16 个字符(默认大小)的字符串
Ajv3ejknLmqwC36z
定义大小
$this->random->size(32)->get();
大写和小写
$this->random->uppercase()->get(); $this->random->lowercase()->size(255)->get();
要返回混合大小写,可以仅
$this->random->mixedcase()->get();
定义一个模式
模式方法使用正则表达式,因此您可以使用
$this->random->pattern('[abcd]')->get(); $this->random->pattern('[A-F0-9]')->get(); /// Hexadecimal
要获取
abcddcbabbacbbdabbcb
数字和整数
模式方法使用正则表达式,因此您可以使用
$this->random->numeric()->start(10)->end(20)->get();
要获取
(int) 18
但如果你设置大小
$this->random->numeric()->size(3)->get();
您将得到一个字符串
(string) 123
十六进制
$this->random->hex()->size(10)->get();
十六进制默认为大写,但您可以通过这样做来获取小写
$this->random->hex()->lowercase()->get();
前缀 && 后缀
$this->random->hex()->prefix('#')->size(6)->lowercase()->get();
您应该得到一个随机的 CSS 颜色
#fafafa
当然,同样的方法也适用于后缀
$this->random->prefix('!')->suffix('@')->get();
趣味知识
目前 trivia 数据库中有 43,982 个问题,这是您获取它们的方式
$this->random->trivia()->get(); $this->random->trivia()->count(2)->get();
您需要安装 trivia 数据库包
$ composer require pragmarx/trivia
Faker
如果您安装 Faker
composer require fzaninotto/faker
您还将获得所有 Faker 功能的访问权限,如
$this->random->city()->get();
并且还可以使用 Random 的所有其他功能
$this->random->prefix('city: ')->city()->lowercase()->get();
您还可以更改 faker 类,选择一个您更喜欢的类
$this->random->fakerClass(AnotherFaker\Factory::class)->date()->get();
原始字符串
通常该包返回 Base64 范围内的字符(A 到 Z,a 到 z 和 0 到 9),但您可以完全禁用此功能并使其返回 random_bytes()
生成的任何内容
$this->random->raw()->get();
变更日志
请参阅 CHANGELOG 以获取有关最近更改的更多信息。
测试
$ composer update $ vendor/bin/phpunit
贡献
请参阅 CONTRIBUTING 以获取详细信息。
安全
如果您发现任何与安全相关的问题,请通过电子邮件 [email protected] 联系,而不是使用问题跟踪器。
鸣谢
许可证
MIT 许可证 (MIT)。请参阅 许可证文件 以获取更多信息。