PHP deep clone and recursive array merge
PHP
<?php
function deep_clone(mixed $value): mixed
{
return unserialize(serialize($value));
}
function deep_merge(array $base, array $override): array
{
foreach ($override as $key => $value) {
if (is_array($value) && isset($base[$key]) && is_array($base[$key])) {
$base[$key] = deep_merge($base[$key], $value);
} else {
$base[$key] = deep_clone($value);
}
}
return $base;
}