通过 faker laravel 创建日期时间,格式为 dd-mm-yyyy 分时秒,例如:26/01/2022 20:52:23

Create a datetime by faker laravel with format dd-mm-yyyy minute hour second, for example : 26/01/2022 20:52:23

'from' => $this->faker->dateTime($max = 'now', $timezone = null),
'to' => $this->faker->dateTime($max = 'now', $timezone = null),

在我的工厂文件中,我对“from”和“to”使用了 dateTime 方法,但它的创建格式为:yyyy-mm-dd。如何使用 dd-mm-yyyy 分时秒格式为“from”创建值?

以下如何:

'from' => \Carbon\Carbon::parse($this->faker->dateTime($max = 'now', $timezone = null))->format('d-m-Y H:i:s'),

如果需要,您可以将 format() 中的 - 替换为 /。另请查看 Carbon docs 以了解还有哪些其他方法可用。

我知道 Carbon 原生包含在 Laravel 中,但是,如果你想要一个原生的 PHP 解决方案,因为 Faker dateTime 函数 returns 一个 DateTime 对象,你可以使用DateTime class 的 format() 函数,其文档可以是 found here

该代码可能如下所示:

'from' => $this->faker->dateTime()->format('d-m-Y H:i:s'),