-1

im trying to convert a comma separated into a multidimensional array to create a menu structure of this.

this is what i have already..

        for ($i=0; $i < $count; $i++) {
                if($i > 0){
                    array_push($tagmenu[0][$pretags[$i-1]], array($pretags[$i]=>array()));
                } else {
                    array_push($tagmenu, array($pretags[$i]=>array()));
                }

            }

i have this as a string

$tags = 'image,landscape,night';

and i want it to look like this

Array(
      [images] = Array (
                 [landscape] = Array(
                               [night] = Array ()
                 )
      )

i'm searching my fingers off on this

Cœur
  • 37,241
  • 25
  • 195
  • 267
ceed
  • 689
  • 1
  • 6
  • 15
  • possible duplicate of [How to recursively create a multidimensional array?](http://stackoverflow.com/questions/1417019/how-to-recursively-create-a-multidimensional-array) – Amal Murali Apr 13 '14 at 14:51

1 Answers1

2
$tags = 'image,landscape,night';
$newArray = array();
$wrkArray = &$newArray;

foreach(explode(',',$tags) as $tag) {
    $wrkArray[$tag] = array();
    $wrkArray = &$wrkArray[$tag];
}
unset($wrkArray);
var_dump($newArray);
Mark Baker
  • 209,507
  • 32
  • 346
  • 385