jono20201/input-to-date

此包已被废弃,不再维护。未建议替代包。

一个小的PHP库,帮助将用户输入转换为Carbon对象。

1.3 2016-10-26 15:38 UTC

This package is not auto-updated.

Last update: 2023-07-08 13:18:14 UTC


README

这是一个非常简单的库,可以将用户输入转换为Carbon对象,无需担心可能由不良或空输入引发的异常。

如果你正在使用框架(如Laravel),如果你想发送有关无效输入的友好错误,你应该仍然验证用户输入。

功能

  • 将用户输入解析为Carbon对象。
  • 错误/空输入时抛出异常或返回默认值。
  • 流畅的API

使用

以下示例将返回一个包含正确日期的Carbon对象。

    $user_input = '01/01/2016 09:30:30'
    $date = InputToDate::create('d/m/Y H:i:s')
                        ->convert($user_input);

以下示例输入不正确,将返回 null,因为我们通过运行 setReturnNullOnFailure() 方法请求了它。

    $user_input = '01/01/2016 09:30:30'
    $date = InputToDate::create('d/m/Y')
                        ->setReturnNullOnFailure()
                        ->convert($user_input);

以下示例将返回当前时间,因为输入不正确,但因为我们请求了默认值 Carbon::now()

    $user_input = '01/01/2016 09:30:30'
    $date = InputToDate::create('d/m/Y')
                        ->setDefault(Carbon::now())
                        ->convert($user_input);

以下将抛出 InvalidArgumentException 异常,因为输入不正确,我们没有设置任何其他默认值。您也可以显式添加 throwException() 方法。

    $user_input = '01/01/2016 09:30:30'
    $date = InputToDate::create('d/m/Y')
                        ->convert($user_input);

贡献

欢迎提交pull请求。