此函数为我们提供了用于类型过滤的极其简单的解决方案。
没有此函数...
<?php
if (!isset($_GET['a'])) {
$a = null;
} elseif (!is_string($_GET['a'])) {
$a = false;
} else {
$a = $_GET['a'];
}
$b = isset($_GET['b']) && is_string($_GET['b']) ? $_GET['b'] : '';
?>
使用此函数...
<?php
$a = filter_input(INPUT_GET, 'a');
$b = (string)filter_input(INPUT_GET, 'b');
?>
是的,FILTER_REQUIRE_SCALAR 似乎被设置为默认选项。
它对于消除 E_NOTICE、E_WARNING 和 E_ERROR 非常有用。
此事实应记录在案。