Функция parse_str() получает строку, имеющую формат запроса к php-скрипту, извлекает из неё все параметры и сохраняет в соответствующих переменных. Заметьте, что функция ничего не возвращает, то есть больше похожа на процедуру.
Итак, пусть ваш сценарий называется page.php и пусть он был запущен с такими параметрами: page.php?act=show&id=3. Если в этом сценарии присутствует такая строка:
// ничего не возвращает, но инициализирует переменные
parse_str($_SERVER['QUERY_STRING']);
То будут проинициализированы две переменные: $act значением 'show' и $id, равное 3.
В достаточно простых сценариях инициализация отдельных переменных допустима. Но что делать, если в вашем скрипте довольно много переменных, да и строка запроса содержит десяток параметров? Читаем документацию: если передать функции второй параметр, то в него будут записаны все эти значения как элементы массива.
parse_str($_SERVER['QUERY_STRING'], $query_mass);
echo $query_mass['act']; // == 'show'
echo $query_mass['id']; // == 3
Комментариев нет:
Отправить комментарий