PHP – Сделать многомерный ассоциативный массив из строки с разделителями

Можете ли вы повернуть эту строку:

"package.deal.category" 

В массив вроде этого:

 $array['package']['deal']['category'] 

Значение внутри индекса в этой точке может быть любым.

Что вы пробовали ? Абсолютный ответ на этот вопрос очень прост:

 $keys = explode('.', $string); $array = array(); $arr = &$array; foreach ($keys as $key) { $arr[$key] = array(); $arr = &$arr[$key]; } unset($arr); 

… но почему это было бы полезно для вас?

Я действительно не понимаю, с чем проблема?

 $parts = explode('.', $string); $array = array(); while (!empty($parts)) { $array = array(array_pop($parts) => $array); } 

Попробуй это:

 $text = 'package.deal.category'; $array = array(); foreach(array_reverse(explode('.', $text)) as $key) $array = array($key => $array); print_r($array);