如何验证CakePHP 3.x中的URL?
答
在src/Model/Table/[YourClasses]Table.php
public function validationDefault(Validator $validator) {
// In with the other validators
$validator->add('url', 'valid', ['rule' => 'url']);
return $validator;
}
校验器的默认选项可在这里:
http://api.cakephp.org/3.0/class-Cake.Validation.Validation.html#_url
+0
工作很好!谢谢 ! – dkourk 2015-04-04 17:02:13
+0
没问题!很高兴工作! – 2015-04-04 17:04:13
答
是这样的:没有测试过,可能需要一点调整方案的..
function check_url($url)
{
$url = preg_match_all('#[[email protected]:%_\+.~\#?&//=]{2,256}\.[a-z]{2,4}\b(\/[[email protected]:%_\+.~\#?&//=]*)?#si', $url);
return $url;
}
使用php函数为此'filter_var($ url,FILTER_VA LIDATE_URL)' – 2015-04-04 16:15:06
简短的回答是正则表达式 – starkeen 2015-04-04 16:15:39
或者使用' '规则'=>“url'' 例如'$公共验证=阵列( '网站'=>阵列( '规则'=> 'URL' ) );'参考:http://book.cakephp.org/2.0/en/models/data-validation.html#Validation::url – 2015-04-04 16:20:31