Как преобразовать строку с содержимым массива в массив?

Есть массив в виде строки:

'key' => [
    [
        'subkey_1' => 'value_1',
        'subkey_2' => 'value_2'
    ]
]

А так он выглядит в самой строке:

"""
\r\n
\t\t'key' => [\r\n
\t\t\t[\r\n
\t\t\t\t'subkey_1' => 'value_1',\r\n
\t\t\t\t'subkey_2' => 'value_2'\r\n
\t\t\t]\r\n
\t\t]\r\n
\t
"""

Можно ли как-то преобразовать эту строку в массив? Функция json_decode() не берет.


Ответы (2 шт):

Автор решения: user363756

Это не json, а массив в коде php. Вам нужно либо писать свой десериализатор либо перед отправкой использовать json_encode().

→ Ссылка
Автор решения: delikates

Как говориться на скорую руку... Заменяете "\r" на chr(10), "\n" на chr(13), "\t" на chr(8) получите тоже самое что в первом примере. Дописываете что-то типа "$data=[".<тут полученная строка>."]" и либо eval этого всего безобразия либо записываете это в отдельный php-файл c тегом <?php вначале и делаете include :) А если подумаете, то и сами найдете еще минимум два варианта :)

→ Ссылка