"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!}总结
以上是内存溢出为你收集整理的php – laravel url validation umlauts全部内容,希望文章能够帮你解决php – laravel url validation umlauts所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)