3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $array1 = range('A', 'I'); $array2 = array(0 => 'A', 1 => 'B', 7 => 'H', 8 => 'I'); $size1 = count($array1); $size2 = count($array2); $hit = 0; $miss = -1; $max_size = max($size1, $size2); $array3 = array(); for($i = 0; $i < $max_size; $i++) { $flag = 0; if(isset($array1[$i]) && isset($array2[$i])) { if($array1[$i] === $array2[$i]) { $hit++; $miss = -1; } else $flag = 1; } else { $flag = 1; } if($flag == 1) { if($miss == -1) { if($hit > 0); array_push($array3, $hit); $miss = 0; array_push($array3, 0); } $hit = 0; } } if($hit > 0) array_push($array3, $hit); if($size1 != $size2) { if($miss == -1) array_push($array3,0); //Suppose array sizes are not equal and last scanned element-pair is not matched. To avoid an additional 0 } print_r($array3);
Output for 5.3.7 - 7.1.0
Array ( [0] => 2 [1] => 0 [2] => 2 [3] => 0 )