我正在寻找一种使用 laravel Faker 生成最小和最大字符数之间的随机字符串的方法。我必须在4和20字符之间创建随机字符串。此方法str_random将生成正好 20 个字符,但如何指定最小字符数?
<?php
use Faker\Generator as Faker;
$factory->define(App\User::class, function (Faker $faker) {
return [
'name' => str_random(20),
];
});Run Code Online (Sandbox Code Playgroud)
更新:我现在使用以下代码作为解决方法:
'name' => substr($faker->name(), 0, rand(4, 20))
Run Code Online (Sandbox Code Playgroud)
您可以使用regexifyand 这让您可以控制随机生成的字符串中可以包含哪些字符,如下所示:
<?php
use Faker\Generator as Faker;
$factory->define(App\User::class, function (Faker $faker) {
return [
'name' => $faker->regexify('[A-Za-z0-9]{' . mt_rand(4, 20) . '}'),
];
});
Run Code Online (Sandbox Code Playgroud)
另一种选择是$faker->realText(mt_rand(4, 20))
| 归档时间: |
|
| 查看次数: |
8418 次 |
| 最近记录: |