在验证之前更改请求对象

时间:2016-01-25 11:18:53

标签: php laravel-5

android:theme

我需要将邮政编码字段转换为大写,之后我将其传递给此验证函数。我试过if($key == "postcode") { $this->validate($request, [ 'postcode' => ['required','regex:#^(GIR ?0AA|[A-PR-UWYZ]([0-9]{1,2}|([A-HK-Y][0-9]([0-9ABEHMNPRV-Y])?)|[0-9][A-HJKPS-UW]) ?[0-9][ABD-HJLNP-UW-Z]{2})$#'], ]); } 但是得到了;

  

在写上下文中不能使用方法返回值。

我希望将$request->input('postcode') = strtoupper($request->input('postcode'));理想地保留为整个$request对象。否则我只会传递它自己的Request。实际上我认为该方法是$request->input('postcode')的类型提示。

这是Laravel 5.1

1 个答案:

答案 0 :(得分:2)

您可以使用merge方法执行此操作:

$request->merge(array('postcode' => strtoupper($request->input('postcode'))));

通过在正则表达式的末尾添加i修饰符,可能知道您可以使验证不区分大小写,这也很有趣:

#^(GIR .... $#i