Я пытаюсь использовать функцию array_map для анализа строки запроса и получения пары ключ => значение:
function parse_query_string($string)
{
$result = [];
$arry = explode('&',$string);
$get_qry_str_array = function($str, &$result)
{
$a = explode('=',$str);
$result[$a[0]] = $a[1];
};
array_map($get_qry_str_array,$arry, $result);
return $result;
}
если я использую эту функцию, как показано ниже, я ожидал, что она вернет ассоциативный массив с каждым параметром строки запроса и значением в виде пары ключ => значение, потому что я передаю переменную $result в качестве ссылки.
$qry_str_array = parse_query_string('edit=1&delete=2');
print_r($qry_str_array);
То есть я ожидаю массив вроде:
[
'edit' => 1,
'delete' => 2,
]
но я получаю пустой массив.
Я использую это неправильно? Я новичок в мире php, относительно.
http://php.net/manual/en/function.parse-str.php
для разбора таких строк - person splash58   schedule 11.02.2018$get_qry_str_array = function($str) use(&$result)
- person splash58   schedule 11.02.2018array array_map ( callable $callback , array $array1 [, array $... ] )
— в определении функции сказано, что можно передавать дополнительные аргументы для использования в качестве аргументов функции обратного вызова. Это из документации, и там тоже есть примеры... - @splash58 - person Yeasir Arafat Majumder   schedule 11.02.2018