试图将闭包传递给 filter_var_array(),但似乎无法使其工作。
$clean = function( $html ) {
return HTML::sanitize( $html, array('p','ul','ol','li'), array('class','style') );
};
$args = array( 'filter' => FILTER_CALLBACK, 'options' => $clean );
$fields = filter_var_array(
array( $_POST['field1'], $_POST['field2'], $_POST['field3'] ),
array( 'field1' => $args, 'field2' => $args, 'field3' => $args )
);
上面运行后,$fields 是一个空数组。
请注意,单个过滤工作正常:
$field1= filter_var( $_POST['field1'], FILTER_CALLBACK, array( 'options' => $clean ) );
有任何想法吗?