note 55983 added to function.array-merge-recursive
| From: | jason at ebasterpro dot com | Date: | Fri, 19 Aug 2005 16:56:10 +0000 |
| Subject: | note 55983 added to function.array-merge-recursive | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-93910@lists.php.net to get a copy of this message | ||
This modifications allows you to merge arrays of objects and objects of arrays recursively.
/**
* arrayobj_merge_recursive2()
*
* Similar to array_merge_recursive2 but supports objects and arrays, keyed-valued are always
overwritten.
* Priority goes to the 2nd array. And support Object Array mixture
*
* @static yes
* @public yes
* @param $paArray1 array/object
* @param $paArray2 array/object
* @return array/object
*/
function arrayobj_merge_recursive2($paArray1, $paArray2)
{
if(is_array($paArray2))
{
foreach ($paArray2 AS $sKey2 => $sValue2)
{
$paArray1[$sKey2] = arrayobj_merge_recursive2(@$paArray1[$sKey2], $sValue2);
}
}
elseif(is_object($paArray2))
{
foreach ($paArray2 AS $sKey2 => $sValue2)
{
$paArray1->{$sKey2} = arrayobj_merge_recursive2(@$paArray1->{$sKey2}, $sValue2);
}
} else {
return $paArray2;
}
return $paArray1;
}
----
Manual Page -- http://www.php.net/manual/en/function.array-merge-recursive.php
Edit -- http://master.php.net/manage/user-notes.php?action=edit+55983
Delete: added to the manual -- http://master.php.net/manage/user-notes.php?action=delete+55983&report=yes&reason=added+to+the+manual
Delete: bad code -- http://master.php.net/manage/user-notes.php?action=delete+55983&report=yes&reason=bad+code
Delete: spam -- http://master.php.net/manage/user-notes.php?action=delete+55983&report=yes&reason=spam
Delete: useless -- http://master.php.net/manage/user-notes.php?action=delete+55983&report=yes&reason=useless
Delete: non-english -- http://master.php.net/manage/user-notes.php?action=delete+55983&report=yes&reason=non-english
Delete: other reasons -- http://master.php.net/manage/user-notes.php?action=delete+55983&report=yes
Reject -- http://master.php.net/manage/user-notes.php?action=reject+55983&report=yes
Search -- http://master.php.net/manage/user-notes.php