public function get($item) {
if (isset($_POST[$item]) && $_POST[$item] != '') {
$_POST[$item] = filter_var($_POST[$item],FILTER_SANITIZE_SPECIAL_CHARS);
if(is_numeric($_POST[$item])) {
return (int)$_POST[$item];
}
return $_POST[$item];
}else if (isset($_GET[$item]) && $_GET[$item] != '') {
$_GET[$item] = filter_var($_GET[$item],FILTER_SANITIZE_SPECIAL_CHARS);
if(is_numeric($_GET[$item])) {
return (int)$_GET[$item];
}
return $_GET[$item];
}
return '';
}
有没有办法可以提高效率?和/或者你可以帮我改进这段代码吗?我想检查$ _GET / $ _POST数组是否有值。并过滤掉坏用户的所有邪恶输入。
答案 0 :(得分:0)
使用包含$_REQUEST
和POST
变量的GET
。
public function get($item) {
if (!empty($_REQUEST[$item])) {
$_REQUEST[$item] = filter_var($_REQUEST[$item], FILTER_SANITIZE_SPECIAL_CHARS);
return is_numeric($_REQUEST[$item]) ? (int) $_REQUEST[$item] : $_REQUEST[$item];
}
return '';
}