note 86190 modified in function.array-values by danbrown

From: Date: Tue, 07 Oct 2008 13:48:56 +0000
Subject: note 86190 modified in function.array-values by danbrown
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-145126@lists.php.net to get a copy of this message
<?php $array=array( 'value1'=>'value', 'array1'=> array( 'subItem1'=>'subItem1', 'subItem2'=>'subItem2' ), 'array2'=> array( 'subItem1'=>'subItem1' )); $newArray=array(); array_flatten($array,$newArray); print_r( $newArray ); //Output //Array //( // [value1] => value // [array1|subItem1] => subItem1 // [array1|subItem2] => subItem2 // [array2|subItem1] => subItem1 //) // recursively reduces deep arrays to single-dimensional arrays function array_flatten($array, &$newArray = Array() ,$prefix='',$delimiter='|') { foreach ($array as $key => $child) { if (is_array($child)) { $newPrefix = $prefix.$key.$delimiter; $newArray =& array_flatten($child, $newArray ,$newPrefix, $delimiter); } else { $newArray[$prefix.$key] = $child; } } return $newArray; } ?> --was-- $array=array( 'value1'=>'value', 'array1'=> array( 'subItem1'=>'subItem1', 'subItem2'=>'subItem2' ), 'array2'=> array( 'subItem1'=>'subItem1' )); $newArray=array(); array_flatten($array,$newArray); print_r( $newArray ); //Output //Array //( // [value1] => value // [array1|subItem1] => subItem1 // [array1|subItem2] => subItem2 // [array2|subItem1] => subItem1 //) // recursively reduces deep arrays to single-dimensional arrays function array_flatten($array, &$newArray = Array() ,$prefix='',$delimiter='|') { foreach ($array as $key => $child) { if (is_array($child)) { $newPrefix = $prefix.$key.$delimiter; $newArray =& array_flatten($child, $newArray ,$newPrefix, $delimiter); } else { $newArray[$prefix.$key] = $child; } } return $newArray; } http://php.net/manual/en/function.array-values.php

« previous php.notes (#145126) next »