unset($tmp['icons']);
}
- $config = array_merge(Horde_Array::array_merge_recursive_overwrite($config, $tmp), array(
+ $config = array_merge(Horde_Array::replaceRecursive($config, $tmp), array(
'app' => $val[0],
'driver' => $driver
));
$GLOBALS['conf'] = ($app == 'horde')
? $this->_confCache['horde']
- : Horde_Array::array_merge_recursive_overwrite($this->_confCache['horde'], $this->_confCache[$app]);
+ : Horde_Array::replaceRecursive($this->_confCache['horde'], $this->_confCache[$app]);
}
/**
}
/**
- * Enhanced array_merge_recursive() function. Main difference from PHP's
- * stock function is later value always overwrites earlier value (stock
- * function will instead create an array with all values of key).
+ * Backported array_replace_recursive().
*
* @todo Remove when requiring PHP 5.3.
*
*
* @return array The merged array.
*/
- static public function array_merge_recursive_overwrite(array $a1, array $a2)
+ static public function replaceRecursive(array $a1, array $a2)
{
if (function_exists('array_replace_recursive')) {
return array_replace_recursive($a1, $a2);
}
$a1[$key] = (is_array($val))
- ? self::array_merge_recursive_overwrite($a1[$key], $val)
+ ? self::replaceRecursive($a1[$key], $val)
: $val;
}
<email>jan@horde.org</email>
<active>yes</active>
</lead>
- <date>2010-12-21</date>
- <time>23:03:12</time>
+ <date>2011-01-03</date>
+ <time>13:04:38</time>
<version>
<release>0.2.0</release>
<api>0.2.0</api>
</stability>
<license uri="http://www.gnu.org/copyleft/lesser.html">LGPL</license>
<notes>
+* Renamed Horde_Array::array_merge_recursive_overwrite() to Horde_Array::replaceRecursive().
* Added Horde_Domhtml::.
- * Removed Horde_Util::assertDriverConfig().
- * Removed Horde_Util::bufferOutput().
- * Removed Horde_Util::uriB64Encode() and Horde_Util::uriB64Decode().
- * Removed Horde_Util::strftime2date() and Horde_Util::date2strftime().
- * Removed Horde_Util::closeWindowJs() and Horde_Util::nocacheUrl().
- * Added Horde_String::convertToUtf8().
- * Added Horde_Util::abbreviate().
- * Removed Horde_Array::combine() and Horde_Util::hmac().
- * Initial Horde 4 package.
+* Removed Horde_Util::assertDriverConfig().
+* Removed Horde_Util::bufferOutput().
+* Removed Horde_Util::uriB64Encode() and Horde_Util::uriB64Decode().
+* Removed Horde_Util::strftime2date() and Horde_Util::date2strftime().
+* Removed Horde_Util::closeWindowJs() and Horde_Util::nocacheUrl().
+* Added Horde_String::convertToUtf8().
+* Added Horde_Util::abbreviate().
+* Removed Horde_Array::combine() and Horde_Util::hmac().
+* Initial Horde 4 package.
</notes>
<contents>
<dir baseinstalldir="/" name="/">
<release>beta</release>
<api>beta</api>
</stability>
- <date>2010-12-21</date>
+ <date>2011-01-03</date>
<license uri="http://www.gnu.org/copyleft/lesser.html">LGPL</license>
<notes>
+* Renamed Horde_Array::array_merge_recursive_overwrite() to Horde_Array::replaceRecursive().
* Added Horde_Domhtml::.
- * Removed Horde_Util::assertDriverConfig().
- * Removed Horde_Util::bufferOutput().
- * Removed Horde_Util::uriB64Encode() and Horde_Util::uriB64Decode().
- * Removed Horde_Util::strftime2date() and Horde_Util::date2strftime().
- * Removed Horde_Util::closeWindowJs() and Horde_Util::nocacheUrl().
- * Added Horde_String::convertToUtf8().
- * Added Horde_Util::abbreviate().
- * Removed Horde_Array::combine() and Horde_Util::hmac().
- * Initial Horde 4 package.
+* Removed Horde_Util::assertDriverConfig().
+* Removed Horde_Util::bufferOutput().
+* Removed Horde_Util::uriB64Encode() and Horde_Util::uriB64Decode().
+* Removed Horde_Util::strftime2date() and Horde_Util::date2strftime().
+* Removed Horde_Util::closeWindowJs() and Horde_Util::nocacheUrl().
+* Added Horde_String::convertToUtf8().
+* Added Horde_Util::abbreviate().
+* Removed Horde_Array::combine() and Horde_Util::hmac().
+* Initial Horde 4 package.
</notes>
</release>
</changelog>
'two/two' => 22),
'three' => 33,
'four' => 4),
- Horde_Array::array_merge_recursive_overwrite(
+ Horde_Array::replaceRecursive(
array('one' => 1,
'two' => array('two/one' => 1,
'two/two' => 2),
extract($result);
$result = Horde::loadConfiguration('mime_drivers.php', array('mime_drivers', 'mime_drivers_map'), 'luxor');
if (isset($result['mime_drivers'])) {
- $mime_drivers = Horde_Array::array_merge_recursive_overwrite($mime_drivers, $result['mime_drivers']);
+ $mime_drivers = Horde_Array::replaceRecursive($mime_drivers, $result['mime_drivers']);
}
if (isset($result['mime_drivers_map'])) {
- $mime_drivers_map = Horde_Array::array_merge_recursive_overwrite($mime_drivers_map, $result['mime_drivers_map']);
+ $mime_drivers_map = Horde_Array::replaceRecursive($mime_drivers_map, $result['mime_drivers_map']);
}
$nodes = $files->getDir($dir);
$result = Horde::loadConfiguration('mime_drivers.php', array('mime_drivers', 'mime_drivers_map'), 'horde');
extract($result);
$result = Horde::loadConfiguration('mime_drivers.php', array('mime_drivers', 'mime_drivers_map'), 'luxor');
- $mime_drivers = Horde_Array::array_merge_recursive_overwrite($mime_drivers, $result['mime_drivers']);
- $mime_drivers_map = Horde_Array::array_merge_recursive_overwrite($mime_drivers_map, $result['mime_drivers_map']);
+ $mime_drivers = Horde_Array::replaceRecursive($mime_drivers, $result['mime_drivers']);
+ $mime_drivers_map = Horde_Array::replaceRecursive($mime_drivers_map, $result['mime_drivers_map']);
$contents = file_get_contents($filename);
extract($result);
$result = Horde::loadConfiguration('mime_drivers.php', array('mime_drivers', 'mime_drivers_map'), 'luxor');
if (isset($result['mime_drivers'])) {
- $mime_drivers = Horde_Array::array_merge_recursive_overwrite(
+ $mime_drivers = Horde_Array::replaceRecursive(
$mime_drivers, $result['mime_drivers']);
}
if (isset($result['mime_drivers_map'])) {
- $mime_drivers_map = Horde_Array::array_merge_recursive_overwrite(
+ $mime_drivers_map = Horde_Array::replaceRecursive(
$mime_drivers_map, $result['mime_drivers_map']);
}