各种filter flags可以与PHP的filter_input()
函数一起使用。
例如,如果我想检索标量POST字段的值,我可以使用默认值,而不指定过滤器。或者,如果我正在处理数组POST字段,我将使用相应的过滤器:
$scalar = filter_input(INPUT_POST, 'field');
$array = filter_input(INPUT_POST, 'field', FILTER_DEFAULT, FILTER_REQUIRE_ARRAY);
是否可以将过滤器标记与AND
或OR
结合使用?例如,使用OR
:
$value = filter_input(INPUT_POST, 'field', FILTER_DEFAULT, FILTER_REQUIRE_SCALAR || FILTER_REQUIRE_ARRAY);
可能的用例是循环POST字段,其中一些可以是数组。如,
foreach ($fieldSet as $field)
{
$value = filter_input(INPUT_POST, $field, FILTER_DEFAULT, FILTER_REQUIRE_SCALAR || FILTER_REQUIRE_ARRAY);
...
}