Возможно, вместо того, чтобы просто проверить, является ли он действительным, запустите его через функцию очистки, которая принимает значение по умолчанию.
Кроме того, мне нравится использовать следующую функцию, чтобы не получать предупреждения о доступе к несуществующим ключам массива при запуске E_STRICT:
function GetVar($var, $default = '') {
$value = $default;
if(isset($_GET[$var])) {
$value = $_GET[$var];
}
return $value;
}
function custom_clean($value, $default = '') {
... validation logic or return $default ...
}
$foo = custom_clean(GetVar('foo'), 'default');