note 55983 added to function.array-merge-recursive

From: 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

« previous php.notes (#93910) next »