public static function Helper::array_merge__save_numeric_keys__recursive in Anti Spam by CleanTalk 8.4
Same name and namespace in other branches
- 9.1.x src/lib/Cleantalk/Common/Helper.php \Cleantalk\Common\Helper::array_merge__save_numeric_keys__recursive()
* Merging arrays without reseting numeric keys recursive * *
Parameters
array $arr1 One-dimentional array: * @param array $arr2 One-dimentional array * * @return array Merged array
File
- src/
lib/ Cleantalk/ Common/ Helper.php, line 972
Class
- Helper
- CleanTalk Helper class. Compatible with any CMS.
Namespace
Cleantalk\CommonCode
public static function array_merge__save_numeric_keys__recursive($arr1, $arr2) {
foreach ($arr2 as $key => $val) {
// Array | array => array
if (isset($arr1[$key]) && is_array($arr1[$key]) && is_array($val)) {
$arr1[$key] = self::array_merge__save_numeric_keys__recursive($arr1[$key], $val);
// Scalar | array => array
}
elseif (isset($arr1[$key]) && !is_array($arr1[$key]) && is_array($val)) {
$tmp = $arr1[$key] = $arr1[$key] = $val;
$arr1[$key][] = $tmp;
// array | scalar => array
}
elseif (isset($arr1[$key]) && is_array($arr1[$key]) && !is_array($val)) {
$arr1[$key][] = $val;
// scalar | scalar => scalar
}
else {
$arr1[$key] = $val;
}
}
return $arr1;
}