VladimirZhid
@VladimirZhid
Нравится делать что-то интересное и полезное.

Как удобнее будет создать массив из строки типа «array_name[0]test_v[2]»?

Такой момент: объект вот такого вида:
f4f0dce989d64891bebaf2ac90140b18.png
Этот массив, хранит в себе разницу между двумя массивами, получаю я его из python - скрипта.

Задача в том чтобы я как-то мог манипулировать полученными значениями. конечно можно что-то городить с регулярками, но может кому-нибудь в голову придет что-нибудь более удобное.

Как создать полноценный массив с вложенностями из вот таких ключей: "root[0]['albums'][2]['album_title']" (если внимательнее посмотрите скриншот то сразу станет понятнее)
  • Вопрос задан
  • 162 просмотра
Решения вопроса 1
nazarpc
@nazarpc
Open Source enthusiast
Регулярка ведь примитивная: ([^\[\]']+).

Что-то вроде:
$final = [];
for ($values_changed as $key => $value) {
    preg_match_all("/([^\[\]']+)/", $key, $m);
    $target = &$final;
    foreach ($m[1] as $sub_key) {
        $target = &$target[$sub_key];
    }
    $target = $value;
}


Код не запускал, может не работать.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы