- print_r: documentation ( source)
- array_shift: documentation ( source)
- explode: documentation ( source)
<?php
function getArrayFromHyphenArray($flatArray){
$deepArray = array();
foreach($flatArray as $key => $value){
$keysArray = explode('-', $key);
$deepArray = recursiveSet($deepArray, $keysArray, $value);
}
}
function recursiveSet(&$array, &$arg, $value){
static $count = 0;
if(empty($arg)){
$array = $value;
return $array;
}
$key = array_shift($arg);
if(!isset($array[$key])){
print_r($key);
$count++;
echo $count;
$array[$key] = array();
}
return recursiveSet($array[$key],$arg,$value);
}
$flatArray = array('this-is-something' => 'value1', 'bif-is-else' => 'value3', 'this-different-else' => 'value2');
print_r(getArrayFromHyphenArray($flatArray));