Array_intersect работает очень странно. Что не так?

array_intersect ведёт себя в коде очень странно. Я был уверен, что он находит все одинаковые значения. Но почему-то он работает очень странно.
Вот отрезок моего кода (Оба массива уже получены и известно, что они не пустые):
print_r($UserArray) ;
    echo "<br/>";
    print_r($PageArray);
    echo "<br/>";
    print_r(array_intersect($PageArray, $UserArray));
    echo "<br/>";

Теперь посмотрим выводы. Вот первый случай:

Array ( [0] => 2 [1] => 3 [2] => 4 )
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 )
Array ( [1] => 2 )

Тут функция не нашла тройку и четвёрку. Почему-то массив содержит только один элемент, хотя совпадает 3.
Второй случай:

Array ( [0] => 2 [1] => 3 [2] => 4 )
Array ( [0] => 4 )
Array ( )

У них одно совпадение, но функция вернула пустой массив. Может, я плохо прочитал документацию. Объясните, что не так с array_intersect?
  • Вопрос задан
  • 124 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы