Что я делаю не так используя функцию array_search()?

Массив №1

Array
(
    [0] => Array
        (
            [0] => Когда плачут цикады 2020
            [1] => Рейтинг недоступен
            [2] => Рейтинг недоступен
        )

    [1] => Array
        (
            [0] => .хак//Вернувшийся
            [1] => 5.53
            [2] => 30 
        )
    [2] => Array
        (
            [0] => .хак//ЗНАК
            [1] => 6.42
            [2] => 611 
        )
)

Массив №2

Array
(
    [0] => Array
        (
            [id_anime] => 1
            [ru_title] => Когда плачут цикады 2020
        )

    [1] => Array
        (
            [id_anime] => 2
            [ru_title] => .хак//Вернувшийся
        )

    [2] => Array
        (
            [id_anime] => 3
            [ru_title] => .хак//ЗНАК
        )
)

Функция:

function testFunc ($arrAnimeTxt, $arrAnimeDb) {
    foreach ($arrAnimeTxt as $anime) {
        foreach ($anime as $key => $item) {
            if ( $key == 0 ) {
                if ( !array_search($item, array_column($arrAnimeDb, 'ru_title')) ) {
                    echo 'No '.$item;
                } else {
                    echo 'Yeas '.$item;
                }
            }
        }
        echo '<br>';
    }
}

Результат:

No Когда плачут цикады 2020
Yeas .хак//Вернувшийся
Yeas .хак//ЗНАК

Собственно первый массив подгружается из txt файла, а второй берётся из БД эти два массива сравниваются и недостающие строки добавляются в БД, но почему-то первый элемент пролетает хотя не должен и в результате должно быть три (Yeas) подскажите пожалуйста, что я делаю не так и, как это исправить.

Спасибо.


Ответы (0 шт):