(PHP 5 >= 5.2.0, PHP 7, PHP 8)
filter_input — Gets a specific external variable by name and optionally filters it
type
One of the INPUT_* constants.
The content of the superglobal that is being filtered is the original "raw" content provided by the SAPI, prior to any user modification to the superglobal. To filter a modified superglobal use filter_var() instead.
var_name
Name of a variable to filter inside the corresponding
type superglobal.
filter
The filter to apply.
Can be a validation filter by using one of the
FILTER_VALIDATE_*
constants, a sanitization filter by using one of the
FILTER_SANITIZE_*
or FILTER_UNSAFE_RAW, or a custom filter by using
FILTER_CALLBACK.
Note:
The default is
FILTER_DEFAULT, which is an alias ofFILTER_UNSAFE_RAW. This will result in no filtering taking place by default.
options
Either an associative array of options,
or a bitmask of filter flag constants
FILTER_FLAG_*.
If the filter accepts options,
flags can be provided by using the "flags" field of array.
Value of the requested variable on success,
false if the filter fails,
or null if the var_name variable is not set.
If the flag FILTER_NULL_ON_FAILURE is used,
it returns false if the variable is not set
and null if the filter fails.
Example #1 A filter_input() example
<?php
$search_html = filter_input(INPUT_GET, 'search', FILTER_SANITIZE_SPECIAL_CHARS);
$search_url = filter_input(INPUT_GET, 'search', FILTER_SANITIZE_ENCODED);
echo "You have searched for $search_html.\n";
echo "<a href='?search=$search_url'>Search again.</a>";
?>The above example will output something similar to:
You have searched for Me & son. <a href='?search=Me%20%26%20son'>Search again.</a>
FILTER_VALIDATE_*
FILTER_SANITIZE_*