(PHP 5 >= 5.2.0)
filter_has_var — Checks if variable of specified type exists
$type
, string $variable_name
)
type
One of INPUT_GET
, INPUT_POST
,
INPUT_COOKIE
, INPUT_SERVER
, or
INPUT_ENV
.
variable_name
Name of a variable to check.
成功时返回 TRUE
, 或者在失败时返回 FALSE
。
nanhe dot kumar at gmail dot com (2013-03-06 14:15:27)
Through this example i think you can better understand
if ( !filter_has_var(INPUT_GET, 'email') ) {
echo "Email Not Found";
}else{
echo "Email Found";
}
Output
localhost/nanhe/test.php?email=1 //Email Found
localhost/nanhe/test.php?email //Email Found
http://localhost/nanhe/test.php //Email Not Found
Consider on second example
http://localhost/nanhe/test.php
$_GET['email']="info@nanhe.in";
if ( !filter_has_var(INPUT_GET, 'email') ) {
echo "Email Not Found";
}else{
echo "Email Found";
}
But output will be Email Not Found
Anonymous (2009-05-21 02:28:30)
To note: filter_has_var() is a bit faster than isset()
drm at melp dot nl (2009-01-16 01:54:18)
Please note that the function does not check the live array, it actually checks the content received by php:
<?php
$_GET['test'] = 1;
echo filter_has_var(INPUT_GET, 'test') ? 'Yes' : 'No';
?>
would say "No", unless the parameter was actually in the querystring.
Also, if the input var is empty, it will say Yes.