Laravel5.4中验证注意事项

Laravel5.4 引入了两个内置的中间件分别是 ConvertEmptyStringsToNullTrimStrings,第一个中间件负责将空字符串的请求参数转换为 NULL 值,第二个中间件负责过滤掉请求参数中前导和追加的空格。

举个例子,在 5.3 版本里,假设我们有这么个请求参数 ?age=&email=%[email protected],接收到到的 age 会是空字符串,email 会是 [email protected],前面多了一个空格。5.4 里 age 就会是 null,email 也是正常值。

使用 Validator 的注意事项

在 5.4 中使用验证器时,要记住从请求对象传递的空字符串将被转换为 null,这意味着下面的规则将失败:

"age" => "integer"

这是因为 age 值已经被转换为 null 了,所以你的验证规则必须为:

"age" => "nullable|integer"

所以使用到这个 ConvertEmptyStringsToNull 中间件的时候要注意下。

你可能感兴趣的:(Laravel5.4中验证注意事项)