使用faker生成性别的最佳方法是生成一个名称,以便性别与名称匹配。
return [
'name' => $faker->name,
'email' => $faker->safeEmail,
'username' => $faker->userName,
'phone' => $faker->phoneNumber,
'gender' => $faker->randomElement(['male', 'female']),//the gender does not match the name as it is.
'address' => $faker->address,
'dob' => $faker->date($format = 'Y-m-d', $max = 'now'),
'password' => bcrypt('secret')
];
发布于 2017-03-31 10:27:47
查看文档和在他们的Github问题部分提出的一个问题,您的解决方案似乎是最好的。有些方法允许您指定名称的性别,这样您就可以这样做:
$gender = $faker->randomElement(['male', 'female']);
return [
'name' => $faker->name($gender),
'email' => $faker->safeEmail,
'username' => $faker->userName,
'phone' => $faker->phoneNumber,
'gender' => $gender,
'address' => $faker->address,
'dob' => $faker->date($format = 'Y-m-d', $max = 'now'),
'password' => bcrypt('secret')
];
希望这符合你的要求。
发布于 2018-03-17 00:52:42
若要在不增加变量的情况下执行此操作,请如下所示
return [
'gender' => $faker->randomElements(['male', 'female']),
'name' => $faker->name(function (array $user) {return $user['gender'];})
]
希望它能帮上忙
发布于 2018-04-09 01:23:37
https://stackoverflow.com/questions/43138197
复制相似问题