我们在 Laravel 应用中使用 Faker。对于一个表,我们有 2 列,start date
并且end date
. end date
如何以永远大于的方式调用fakerstart date
问问题
6733 次
3 回答
9
在您希望的时间空间中创建一个随机开始日期:
$start = $faker->dateTimeBetween('next Monday', 'next Monday +7 days');
然后使用返回的开始日期作为结束日期的最小输入,并确保结束日期的上限也在开始日期之后。
$end = $faker->dateTimeBetween($start, $start->format('Y-m-d H:i:s').' +2 days');
您也可以考虑使用Alice来使用美观且可读的 YAML 创建固定装置。您可以在 Alice 代码中使用变量来实现您的目标。
对于相对日期/时间语法,请查看 PHP 文档。
于 2016-02-25T20:59:13.713 回答
2
您可以执行以下操作:
'start_date' => $faker->date,
'end_date' => $faker->dateTimeBetween($startDate = '-30 years', $endDate = 'now'),
于 2016-02-19T15:06:03.813 回答
0
你可以做这样的事情,
开始日期,在一个月前和从现在起一个月内创建一个随机开始日期。
$star_date = Carbon::instance($faker->dateTimeBetween('-1 months','+1 months'));
将日期修改为未来几天
$end_date = (clone $start_date)->addDays(random_int(0,14));
于 2021-10-02T09:29:55.700 回答