PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

filter_list> <filter_input_array
Last updated: Fri, 26 Sep 2008

view this page in

filter_input

(PHP 5 >= 5.2.0, PECL filter:0.11.0)

filter_inputПринимает переменную извне PHP и, при необходимости, фильтрует ее

Описание

mixed filter_input ( int $type , string $variable_name [, int $filter [, mixed $options ]] )

Список параметров

type

Один из INPUT_GET, INPUT_POST, INPUT_COOKIE, INPUT_SERVER, INPUT_ENV, INPUT_SESSION (не реализовано) и INPUT_REQUEST (не реализовано).

variable_name

Имя переменной.

filter

Применяемый фильтр. По умолчанию FILTER_DEFAULT.

options

Ассоциативный массив параметров либо логическое ИЛИ флагов. Если фильтр принимает параметры, флаги могут быть указаны в элементе массива "flags".

Возвращаемые значения

Значение запрашиваемой переменной в случае успеха, FALSE, если фильтрация завершилась неудачей, или NULL, если переменная variable_name не определена. Если установлен флаг FILTER_NULL_ON_FAILURE, функция возвращает FALSE, если переменная не определена и NULL, если фильтрация завершилась неудачей.

Примеры

Пример #1 Пример использования filter_input()

<?php
$search_html 
filter_input(INPUT_GET'search'FILTER_SANITIZE_SPECIAL_CHARS);
$search_url filter_input(INPUT_GET'search'FILTER_SANITIZE_ENCODED);
echo 
"Вы искали $search_html.\n";
echo 
"<a href='?search=$search_url'>Искать снова.</a>";
?>

Результатом выполнения данного примера будет что-то подобное:

Вы искали Me &#38; son.
<a href='?search=Me%20%26%20son'>Искать снова.</a>



filter_list> <filter_input_array
Last updated: Fri, 26 Sep 2008
 
add a note add a note User Contributed Notes
filter_input
Marques Johansson
02-Jan-2008 08:30
Despite the documentation for 'type', you can specify multiple types by doing:

$test = filter_input(INPUT_GET | INPUT_POST, 'test');

This was tested in 5.2.3.

When both are set it appears to return the value defined first by variables_order (php.ini).

This trick does not seem to work in filter_input_array though.  Neither function supports INPUT_REQUEST at the moment.
vid at phpcult dot com
10-Dec-2007 09:49
If you want to use the callback filter with filter_input, you need to do something like:

$args = array ('options' => 'mycallbackfunction');

$foobar = filter_input(INPUT_POST,'postedvariable',FILTER_CALLBACK,$args);
anthony dot parsons at manx dot net
23-Aug-2007 11:10
FastCGI seems to cause strange side-effects with unexpected null values when using INPUT_SERVER and INPUT_ENV with this function. You can use this code to see if it affects your server:
<?php
var_dump
($_SERVER);
foreach (
array_keys($_SERVER) as $b ) {
   
var_dump($b, filter_input(INPUT_SERVER, $b));
}
echo
'<hr>';
var_dump($_ENV);
foreach (
array_keys($_ENV) as $b ) {
   
var_dump($b, filter_input(INPUT_ENV, $b));
}
?>
If you want to be on the safe side, using the superglobal $_SERVER and $_ENV variables will always work. You can still use the filter_* functions for Get/Post/Cookie without a problem, which is the important part!

filter_list> <filter_input_array
Last updated: Fri, 26 Sep 2008
 
 
show source | credits | sitemap | contact | advertising | mirror sites