Разминка для мозга. Как в PHP создать многомерный массив из строки по разделителю?

hell0w0rd

Продвинутый новичок
Как-то у вас все сложно...
PHP:
function explodeToRecursiveArray($str, $del = ' ', $lastVal = null)
{
    $temp = explode($del, $str);
    for ($i = count($temp); $i--;) {
        $lastVal = array($temp[$i] => $lastVal);
    }

    return $lastVal;
}

print_r(explodeToRecursiveArray('aa_bb_cc_dd', '_', 100500));
 

Вурдалак

Продвинутый новичок
hell0w0rd, речь идёт не о создании, а о сеттере/геттере значения при существующей структуре.
 

hell0w0rd

Продвинутый новичок
hell0w0rd, речь идёт не о создании, а о сеттере/геттере значения при существующей структуре.
При чем тут геттер и сеттер? Я предложил решение без рекурсии и на мой взгляд менее запутанное... О какиех геттерах и сеттерах речь?
 

Вурдалак

Продвинутый новичок
Твой код создаёт набор вложенных массивов. Что ты будешь делать в таком случае:
PHP:
['a_b_c' => 123, 'a_b_d' => 42]
? Рекурсивно мержить? Даже код автора с eval'ом это учитывает.

Напиши функцию
PHP:
set(array & $arr, $key, $value)
с использованием своего кода.
 

hell0w0rd

Продвинутый новичок
Твой код создаёт набор вложенных массивов. Что ты будешь делать в таком случае:
PHP:
['a_b_c' => 123, 'a_b_d' => 42]
? Рекурсивно мержить? Даже код автора с eval'ом это учитывает.

Напиши функцию
PHP:
set(array & $arr, $key, $value)
с использованием своего кода.
Понял, суть была в том что таких массивов может быть несколько... Да, в моем случае только мержить
 
Сверху