为什么在尝试将 Carbon 转换为 DateTime 时出现错误?

use*_*225 2 php laravel php-carbon phpstan

我正在开发一个 Laravel 项目。我尝试使用 Carbon 创建一个 DateTime 对象。这是我尝试过的:

Carbon::createFromFormat('Y-m-d H:i:s', '2021-10-01T00:01:00')->toDateTime();
Run Code Online (Sandbox Code Playgroud)

但我的 phpstan 抱怨:Cannot call method toDateTime() on Carbon\Carbon|false.

为什么会出现这个错误呢?Carbon转换为对象的正确方法是什么DateTime

ayn*_*ber 5

您的格式不正确,因此 Carbon 无法创建时间。你错过了需要转义的 T。

Carbon::createFromFormat('Y-m-d\TH:i:s', '2021-10-01T00:01:00')->toDateTime();
Run Code Online (Sandbox Code Playgroud)