Какова цель $ REQUEST? [дублировать]


согласно Руководству PHP:

переменная $_REQUEST - это ассоциативный массив, который по умолчанию содержит сведения, $_GET, $_POST и $_COOKIE.

таким образом, этот переменных-это своего рода смесь.

Какой целью получить столько данных, реквизиции POST GET и тому подобное?

 1
php
Author: Wallace Maxters, 2015-11-19

2 answers

Superglobal $_REQUEST объединяет все значения, присутствующие в superglobais $_GET, $_POST $_COOKIE в единый ассоциативный массив.

, Если есть один или более значения, которые присутствуют в более superglobal, они наполнены $_REQUEST в соответствии с политикой request_order:

This directive describes the order in which PHP registers GET, POST и Cookie variables into the _REQUEST массив. Registration is done from left to right, newer values override older values. If this directive is not set, variables_order is used for $_REQUEST contents. Note that the default distribution php.ini files does not contain the 'C' for cookies, due to security concerns.

Значение политики variables_order", по умолчанию - GC, то есть, во-первых, принимаются во внимание значения $_GET, а затем, значения $_POST, чтобы заполнить значения $_REQUEST.

 2
Author: Rodrigo Rigotti, 2015-11-19 15:33:04

O $_REQUEST - это тип универсального $_GET, $_POST,$_COOKIE для нее столько делает, если данные идут через $_GET или $_POST она спасает обоих, его использование рекомендуется немного.

Почему его использование не рекомендуется?

Причина В большей безопасности, представьте, что у вас есть форма на странице " pagina1.php, который отправляется pagina2.php.

, Если вы используете $_REQUEST данные могут быть переданы прямых запросов string, то ваша заявка будет подлежать нападки.

См. примечание в руководстве PHP:

Переменные $_REQUEST служат для сценария через механизмы записи: GET, POST, и COOKIE, и перенос может быть изменены удаленному пользователю и не могут быть возложены. A наличие и заказ из переменных, перечисленных в этом массиве определяется в соответствии с директивой конфигурации PHP variables_order.

Так что, если и делает это, если ваши данные будут посланы через get или post используйте $_REQUEST отличие забывает a.

Фильмография : $_GET, $_POST, $_REQUEST, где, когда и как

 1
Author: Gabriel Rodrigues, 2015-11-19 15:31:50