3.2.3 - 普通 - 已关闭
问题描述:
上图是开发手册中关于I方法中使用正则匹配的说明,实际使用中发现当用正则匹配判断通过的情况下,还是返回了默认值,无法判断是否符合过滤条件。
查了下框架I方法的源代码:
if(is_string($filters)){
if(0 === strpos($filters,'/') && 1 !== preg_match($filters,(string)$data)){
// 支持正则验证
return isset($default) ? $default : null;
}else{
$filters = explode(',',$filters);
}
}elseif(is_int($filters)){
$filters = array($filters);
}并没有对正则通过的情况做任何返回处理,建议正则通过改为返回匹配值。 