Laravel date_format 文本月份验证失败

Laravel date_format Validation Fails on Textual Month

我的 JavaScript 图书馆 datepicker returns 日期格式 "March 2019."

Carbon可以解码

$date = Carbon::createFromFormat('M Y', $request->month);

Laravel date_format 验证失败。

$request->validate([
    'month' => [
        'required',
        'date_format:M Y',
    ],
]);

The month does not match the format M Y.

我已经尝试了 here 中的所有 PHP 日期格式 : M, MM, mm, m.

您使用的格式有误。您需要使用标准 PHP 格式,这是 Carbon 和 Laravel 的验证所使用的格式。您可以在 date()

的 PHP 文档中找到它们

因此将您的规则更改为:

date_format:"F Y"
$request->validate([
    'month' => [
        'required',
        'date_format:F Y',
    ],
]);