Проверить несколько значений php array

У меня есть массив в PHP

$permission = array( "admin", "moderator", "guest"  );

и у меня есть другой массив

$userRoles = array( "admin", "moderator" );

Я проверил с помощью in_array, но он не работает с несколькими значениями.

Как я могу проверить atleast одно значение в $userRoles существует на $permission без цикла?

Спасибо заранее.

Ответ 1

Используйте array_intersect

count(array_intersect($permission, $userRoles));

Ответ 2

Используйте array_intersect

array_intersect - вычисляет пересечение массивов

массив array_intersect ( array $array1 , array $array2 [, array $ ... ] )

array_intersect() возвращает массив, содержащий все значения array1, которые присутствуют во всех аргументах. Обратите внимание, что ключи сохраняются.

Read