php - 如何在 Laravel 中验证日期

标签 php laravel validation laravel-5 laravel-5.3

在验证方法中我有以下内容:

$this->validate($request, ['test_date' => 'required|unique:test_db']);

test_datetest_db存储为unix时间。 提交表格后,我得到 $request->get('test_date')mm/dd/Y

唯一验证不起作用,因为我在 mm/dd/Y 中获取日期这与 db (unix 时间)不同。

如何使其在本次验证中独一无二?

最佳答案

你可以试试这个:

//get date from request
$date = $request->get('test_date');

//add the converted date to request
$request->request->add(['new_date_field'=> DateTime::createFromFormat('m/d/Y', $date)->getTimestamp()]);

//validate the updated date field
$this->validate($request, ['new_date_field' => 'required|unique:test_db']);

向请求添加字段:Laravel is there a way to add values to a request array

更新: 您可以使用 offsetSet 方法更新现有字段:

    //get date from request
    $date = $request->get('test_date');

    //update date in request
    $request->offsetSet('test_date', DateTime::createFromFormat('m/d/Y', $date)->getTimestamp());

    //validate the updated date field
    $this->validate($request, ['test_date' => 'required|unique:test_db']);

更新请求字段: Modify request field value before saving in Laravel 5

关于php - 如何在 Laravel 中验证日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47693698/

相关文章:

Laravel Elixir Sass 编译 - .sass 文件

javascript - 使用 getElementsByClassName 将多个值更改为 String

laravel - WAMP + Composer + Laravel + PhpStorm

php - Laravel 自定义验证问题

c# - 简单的 ASP.Net MVC 1.0 验证

java - 检索从组中选择的 Swing 单选按钮

php - 根据出现次数显示数据 MYSQL

php - 从node.js请求JSON文件到PHP

php - PHP格式化类的设计以及提高性能和速度

php - Ajax, PHP - 从数据库中获取