Функция wp_parse_str()
используется для разбора строки на переменные и сохранения их в массиве. Эта функция является оберткой для стандартной PHP функции parse_str()
, и ее основная задача — упростить обработку строк, которые содержат параметры, такие как строки запроса в URL.
wp_parse_str( string $input_string, array &$result ): void
Параметры
$input_string
(string, обязательный) – Строка, которую необходимо разобрать. Обычно это строка запроса, например,foo=1&bar=2
.$result
(array, обязательный) – Массив, в который будут помещены разобранные данные. Передается по ссылке.
Возвращаемое значение
Функция ничего не возвращает. Она изменяет переданный второй параметр $result
, заполняя его разобранными данными.
Пример 1: Разбор строки запроса на переменные
Давайте разберем строку запроса, чтобы извлечь параметры и сохранить их в массиве.
$string = '?first=5&second=10&third=15';
$args = [];
wp_parse_str($string, $args);
print_r($args);
/*
Array
(
[first] => 5
[second] => 10
[third] => 15
)
*/
Пример 2: Извлечение параметров из URL
Предположим, у вас есть URL с параметрами, и вы хотите получить значения этих параметров в виде массива.
$url = 'https://example.com/?item=123&name=JohnDoe&status=active';
$parsed_url = wp_parse_url($url);
// Получим строку запроса
$query_string = $parsed_url['query'];
$args = [];
wp_parse_str($query_string, $args);
print_r($args);
/*
Array
(
[item] => 123
[name] => JohnDoe
[status] => active
)
*/
Пример 3: Обработка строк с несколькими параметрами
Вы можете обрабатывать строки, содержащие несколько параметров, и сохранять их в массив.
$input_string = 'key1=value1&key2=value2&key3=value3';
$result_array = [];
wp_parse_str($input_string, $result_array);
print_r($result_array);
/*
Array
(
[key1] => value1
[key2] => value2
[key3] => value3
)
*/
Пример 4: Обработка строки с булевыми значениями
Функция также корректно обрабатывает булевые значения в строке.
$query = 'active=true&available=false&visible=true';
$parsed_args = [];
wp_parse_str($query, $parsed_args);
print_r($parsed_args);
/*
Array
(
[active] => true
[available] => false
[visible] => true
)
*/
Заключение
Функция wp_parse_str()
в WordPress — это полезный инструмент для разбора строк, содержащих параметры. Она позволяет легко извлекать данные из строк запросов и помещать их в массивы для дальнейшей обработки. Эта функция может быть особенно полезна при работе с URL и формами, где данные часто передаются в виде строк запросов.