[ create a new paste ] login | about

Link: http://codepad.org/xfDvkxSL    [ raw code | output | fork ]

PHP, pasted on Feb 23:
<?php
$array = array(
    'one' => 'one_value',
    'two' => array
        (
            'four' => 'four_value',
            'five' => 'five_value'
        ),

    'three' => array
        (
            'six' => array
                (
                    'seven' => 'seven_value'
                )

        )
);

function flatten($array, $prefix = '') {
	$arr = array();
	foreach($array as $k => $v) {
		if(is_array($v)) {
			$arr = array_merge($arr, flatten($v, $prefix . $k . '-'));
		}
		else{
			$arr[$prefix . $k] = $v;
		}
	}
	return $arr;
}

var_dump(flatten($array));


Output:
1
2
3
4
5
6
7
8
9
10
array(4) {
  ["one"]=>
  string(9) "one_value"
  ["two-four"]=>
  string(10) "four_value"
  ["two-five"]=>
  string(10) "five_value"
  ["three-six-seven"]=>
  string(11) "seven_value"
}


Create a new paste based on this one


Comments: