Почему не работает объединение массивов

У меня есть две строки, и я хочу объединить строку, как john+smith в jsomhinth, я сделал это, но array_combine не показывает набор результатов.
array_combine здесь не работает

Какая польза от array_combine?

<? php

//variable that store two string
$a ='JOHN';
$b='SMITH';
$val=str_split($a,1);
$val1=str_split($b,1);
//print_r($val1);
//print_r($val);
$c=array_combine($val,$val1);
print_r($c);
?>

Этот код, который я попробовал, я получил два массива с ключом и идентификатором. Я хочу соединить ключ с объединением массивов и хочу, чтобы этот вывод был, есть ли какое-либо решение, объединяющее две строки, как это ???

И хочу знать, почему array_combine не работают там и в чем разница array_combine а также array merge,

-2

Решение

За джон + кузнец = jsomhinth Вы можете попробовать это —

$a ='JOHN';
$b='SMITH';
$val=str_split($a,1);
$val1=str_split($b,1);
// Merge the array values pairwise
$str_array = array_map(function($x, $y) {
return ($x . $y);
}, $val, $val1);

$str = '';
// Concatenate the values
foreach($str_array as $s)
{
$str .= $s;
}

ВЫХОД

JSOMHINTH

Пример кода

1

Другие решения

$a = "JOHN";
$b = "SMITH";
$c = "";
$length = strlen($a)> strlen($b) ? strlen($a) : strlen($b);

echo "Given String is ". $a."--".$b."<br>"."Output : ";

for ($i = 0; $i <= $length; $i++) {

$c.= substr($a, $i,1);
$c.= substr($b, $i,1);
}
echo $c;
1