hemker/random-string

随机字符串生成(例如用于网店优惠券代码、一次性链接/密码的散列、账户代码等。)

v1.0 2023-08-06 18:35 UTC

This package is auto-updated.

Last update: 2024-09-30 21:19:45 UTC


README

License PHP-Versions Tests codecov Type-Coverage Psalm-Level

random-string 是一个轻松生成乱序字符字符串的服务。一些用例

  • 网店中的优惠券代码
  • 一次性链接/密码的散列
  • 账户代码

一些特性

  • 完全可自定义要使用的字符
  • 可用的字符预设(数字、BASE16、BASE32...)
  • 无长度限制
  • 与Symfony(依赖注入)等框架或独立使用都表现良好

安装

打开命令行,进入您的项目目录并执行

$ composer require hemker/random-string

如果您没有使用Composer,请尝试一下。这是Composer成为最常用的PHP包管理器的原因之一!它也非常容易使用。有关更多信息,请参阅Composer的网页

否则,下载此项目的所有源文件,并将src/包含到您自己的项目中最佳位置。

用法

假设您想要创建一个只包含数字的长度为6的随机字符串。您只需要与单个类进行交互。

use Hemker\RandomString\RandomStringGenerator;

$generator = new RandomStringGenerator('0123456789', 6);
$string = $generator->create();
// $string is now something random like '395174'

// and of course... you can change settings whenever you want
$generator->chars('abcdefghijklmnopqrstuvwxyz');
$generator->length(10);

输入所有允许的字符很无聊,难以阅读且容易出错?当然!请使用预设代替

use Hemker\RandomString\CharPreset;
use Hemker\RandomString\RandomStringGenerator

// same as above: CharPreset::LETTER_LOWER_CASE == [a-z]
$string = new RandomStringGenerator(CharPreset::LETTER_LOWER_CASE);

您需要创建大量字符串,如500个优惠券代码?简单得很!

use Hemker\RandomString\CharPreset;
use Hemker\RandomString\RandomStringGenerator;

$generator = new RandomStringGenerator(CharPreset::LETTER_UPPER_CASE, 8);
$arrayOfStrings = $generator->create(500);

注意

如果将负数或0传递给 __construct()length(),则会抛出异常(类型为 Hemker\RandomString\Exception\InvalidArgumentException,它扩展了 \InvalidArgumentException)。

贡献

您想看到一个特性?或者您发现了一个错误?太棒了!开源是由每个人的改进推动的。请随意创建或评论一个问题。任何贡献,无论大小,都受欢迎!

您是程序员?太完美了。我们欢迎拉取请求!注意以下提示

  • 此项目使用一些工具来确保代码质量(phpunit、php-cs-fixer、psalm)。
    • 运行 ./phive.phar install 以将所有必需的phars下载到 ./tools
    • 在推送代码之前,运行 ./tools/composer.phar --run-script check-all

注意 有关所有可用命令,请参阅 composer.json(脚本部分)。