note 93720 added to function.array-intersect-key
| From: | markus dot kappe at dix dot at | Date: | Thu, 24 Sep 2009 11:43:56 +0000 |
| Subject: | note 93720 added to function.array-intersect-key | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-161013@lists.php.net to get a copy of this message | ||
<?php
/**
* calculates intersection of two arrays like array_intersect_key but recursive
*
* @param array/mixed master array
* @param array array that has the keys which should be kept in the master array
* @return array/mixed cleand master array
*/
function myIntersect($master, $mask) {
if (!is_array($master)) { return $master; }
foreach ($master as $k=>$v) {
if (!isset($mask[$k])) { unset ($master[$k]); continue; } // remove value from $master if the key
is not present in $mask
if (is_array($mask[$k])) { $master[$k] = $this->myIntersect($master[$k], $mask[$k]); } //
recurse when mask is an array
// else simply keep value
}
return $master;
}
?>
----
Server IP: 212.124.37.9
Probable Submitter: 84.112.151.6
----
Manual Page -- http://www.php.net/manual/en/function.array-intersect-key.php
Edit -- https://master.php.net/note/edit/93720
Del: integrated -- https://master.php.net/note/delete/93720/integrated
Del: useless -- https://master.php.net/note/delete/93720/useless
Del: bad code -- https://master.php.net/note/delete/93720/bad+code
Del: spam -- https://master.php.net/note/delete/93720/spam
Del: non-english -- https://master.php.net/note/delete/93720/non-english
Del: in docs -- https://master.php.net/note/delete/93720/in+docs
Del: other reasons-- https://master.php.net/note/delete/93720
Reject -- https://master.php.net/note/reject/93720
Search -- https://master.php.net/manage/user-notes.php