В ваших ассо c массивах у вас есть дублирующие ключи. Так что если вы используете:
print_r( $array1 );
Вы увидите, что ваш массив содержит только последнюю запись:
Array ( [user_id] => 3 )
Я думаю, что это не то, что вы ожидали. Таким образом, вы должны использовать разные ключи, такие как:
$array1 = array('user_id_1'=>'1','user_id_2'=>'2','user_id_3'=>'3');
$array2 = array('invite_user_id_1'=>'1','invite_user_id_2'=>'3');
Или вы даже не используете ассо c массивы, потому что это устарело в вашем примере, но не берите в голову:
$user_ids = array('1','2','3');
$invited_user_ids = array('1','3');
Вы можете сравнить ваши ассо c массивы вот так:
$array1 = array('user_id_1'=>'1','user_id_2'=>'2','user_id_3'=>'3');
$array2 = array('invite_user_id_1'=>'1','invite_user_id_2'=>'3');
foreach ($array1 as $user_id) {
if( in_array( $user_id, $array2 ) ) {
echo "Matched id: $user_id";
}
}