Мне нужно посмотреть, существует ли какое-либо значение в одном массиве в другом массиве, и числа в случайном порядке. Я нашел решения, которые, кажется, не работают, когда порядок значений не совпадает точно.
Я пробовал array_intersect
, но это не работает, если номер, который я ищу, не в том же порядке.
$array1 = [1,2];
$array2 = [2,3];
$result = array_intersect($array1, $array2);
$result
возвращает false, но я хочу, чтобы он понял, что 2 существует в обоих массивах, и возвращает true.
Я думаю, что у этого есть простое решение, но я не могу найти ничего, что работает.
ОБНОВЛЕНИЕ:
Вот полный код (с использованием PHP, Laravel):
$student = User::find($id);
$studentLocations = $student->hospital()->pluck('id');
$preceptorLocations = Auth::user()->hospital()->pluck('id');
$result = array_intersect($studentLocations, $preceptorLocations);
Если если вернуть результаты каждого:
[2] // studentLocations
[1,2] // preceptorLocations
Но с полным кодом выше я получаю:
"array_intersect(): Argument #1 is not an array"
Если я, например, изменится на array($student->hospital()->pluck('id'))
, он не выдаст ошибку, не вернет true, а когда я верну только результаты, они будут такими:
[[2]]