php – laravel url validation umlauts
发布时间:2020-12-14 19:49:06 所属栏目:大数据 来源:网络整理
导读:我想在laravel验证网址.我的规则包含 "url" = "required|url" 这很有效.但是当用户提交带有变音符号的网址时, 规则检查将始终失败. 像??ü等字符在德国域名中有效. Laravel有没有办法在网址中接受这些字符? Laravel使用filter_var()和FILTER_VALIADTE_URL选
我想在laravel验证网址.我的规则包含
"url" => "required|url" 这很有效.但是当用户提交带有变音符号的网址时, 像??ü等字符在德国域名中有效. Laravel有没有办法在网址中接受这些字符?
Laravel使用filter_var()和FILTER_VALIADTE_URL选项,该选项不允许使用变音符号.您可以编写自定义验证程序或将正则表达式验证规则与正则表达式结合使用.我相信你会找到一个
here
"url" => "required|regex:".$regex 或者更好地将规则指定为数组以避免特殊字符出现问题: "url" => array("required","regex:".$regex) 或者,正如@michael指出的那样,只需在验证之前替换变音符号.请确保您之后保存真实的: $input = Input::all(); $validationInput = $input; $validationInput['url'] = str_replace(['?','?','ü'],['ae','oe','ue'],$validationInput['url']); $validator = Validator::make( $validationInput,$rules ); if($validator->passes()){ Model::create($input); // don't use the manipulated $validationInput! } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |