note 108779 modified in ref.array by danbrown

From: Date: Thu, 24 May 2012 17:27:09 +0000
Subject: note 108779 modified in ref.array by danbrown
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-188196@lists.php.net to get a copy of this message
delete all array entries with $valueToDelete as array entry; does function recursive without changing original array&#13;&#10;&#13;&#10;&#60;?php&#13;&#10; function array_delete_elements($array = null, $valueToDelete = null) {&#13;&#10; //no array given&#13;&#10; if (!isset($array)) {&#13;&#10; return null;&#13;&#10; }&#13;&#10; //process&#13;&#10; $resultList = array();&#13;&#10; foreach ($array as $entryKey =&#62; $entryValue) {&#13;&#10; if (is_array($entryValue)) {&#13;&#10; //entry is array and should be handled again recursive&#13;&#10; $resultList[$entryKey] = array_delete_elements($entryValue, $valueToDelete);&#13;&#10; } else {&#13;&#10; if ($entryValue != $valueToDelete) {&#13;&#10; $resultList[$entryKey] = $entryValue;&#13;&#10; }&#13;&#10; }&#13;&#10; }&#13;&#10; return $resultList;&#13;&#10; }&#13;&#10;?&#62; --was-- <?php //deletes all array entries with $valueToDelete as array entry; does function recursive //without changing original array function array_delete_elements($array = null, $valueToDelete = null) { //no array given if (!isset($array)) { return null; } //process $resultList = array(); foreach ($array as $entryKey => $entryValue) { if (is_array($entryValue)) { //entry is array and should be handled again recursive $resultList[$entryKey] = array_delete_elements($entryValue, $valueToDelete); } else { if ($entryValue != $valueToDelete) { $resultList[$entryKey] = $entryValue; } } } return $resultList; } ?> http://php.net/manual/en/ref.array.php

« previous php.notes (#188196) next »