Перейти к содержимому

parse_str()

В этой статье рассматривается функция PHP parse_str(), предназначенная для разбора строки запроса на переменные. Эта функция полезна при работе с URL и данными форм в PHP. В данном материале мы обсудим синтаксис и применение parse_str(), а также приведём несколько примеров.

Функция parse_str() используется для разбора строки запроса на переменные. Синтаксис функции parse_str() выглядит следующим образом:

Синтаксис parse_str() в PHP

php
void parse_str ( string $str , array &$arr [, string $separator = '&' ] )

Функция принимает до трёх параметров: $str, $arr и $separator. Параметр $str — это строка запроса, которую необходимо разобрать, а параметр $arr — массив, в котором будут храниться разобранные переменные. Параметр $separator — это необязательная строка, используемая для разделения присваиваний переменных в строке запроса.

Примечание: Если второй аргумент ($arr) опущен, parse_str() перезапишет существующие переменные с такими же именами. Это может представлять угрозу безопасности, если входные данные ненадёжны.

Ниже приведён пример использования функции parse_str():

Пример использования parse_str() в PHP

php
<?php
$query = 'name=John+Doe&age=35&gender=male';
parse_str($query, $output);
print_r($output);
?>

В этом примере у нас есть строковая переменная $query, содержащая строку запроса. Мы используем функцию parse_str() для разбора строки запроса в массив.

Результат выполнения этого кода будет следующим:

console
Array
(
    [name] => John Doe
    [age] => 35
    [gender] => male
)

Как видите, функция parse_str() успешно разобрала строку запроса в массив.

Функция parse_str() — это полезный инструмент для работы с URL и данными форм в PHP. Она поможет вам разобрать строку запроса на переменные, что полезно для различных задач, таких как обработка и проверка данных. Освоив эту функцию, вы сможете стать более квалифицированным разработчиком на PHP.

Надеемся, эта статья помогла вам лучше понять работу функции parse_str() в PHP.

Практика

Что делает функция 'parse_str()' в PHP?

Считаете ли это полезным?

Предпросмотр dual-run — сравните с маршрутами Symfony на продакшене.