Получить данные из строки в корректной кодировке

148
21 марта 2018, 06:23

Есть строка вида firstName=%D0%9D%D0%B8%D0%BA%D0%BE%D0%BB%D0%B0%D0%B9&lastName=&patronymic=&phone=80004064909. Как получить корректное значение firstName и phone, например? Это не get-запрос, это строка.

Answer 1

Возможно поможет. За счет уникальности символов, можно делать

$vars = explode("&", $str);
$data = [];
foreach($vars as $var) {
    $elem = explode("=", $var);
    $data[$elem[0]] = $elem[1];
}

Таким образом в массиве $data будут все переменные и их значения.

P.S. Прошу прощения за такой код.

UPD. Желательно еще использовать

$data[$elem[0]] = urldecode($elem[1]);

Если строка закодирована.

READ ALSO
Unit тестирование и sqlite in memory

Unit тестирование и sqlite in memory

Ситуация следующая:

175
Перевод номера в другой формат PHP

Перевод номера в другой формат PHP

Как перевести номер вида +79000066808 в вид 8 900 006-68-08?

222
Как преобразовать tsv ответ яндекс директ api в массив?

Как преобразовать tsv ответ яндекс директ api в массив?

Собственно вопрос такойПолучаю отчет яндекс директа

196