php. Как найти повторяющиеся элементы в массиве?
У меня есть 2 массива. Как найти значения, которые есть и в первом и во втором массиве?
Нравится:
0
Карма:
1
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.
Можно попробовать перебрать элементы первого массива в цикле и сравнить с элементами из второго массива:
Результат:
<?php
$arrayOne = ['a', 'b', 'c', 'd'];
$arrayTwo = ['c', 'd', 'q', 'w'];
$intersect = [];
foreach ($arrayOne as $item) {
if (in_array($item, $arrayTwo)) {
$intersect[] = $item;
}
}
var_dump($intersect);
Результат:
array(2) {
[0] => string(1) "c"
[1] => string(1) "d"
}
[0] => string(1) "c"
[1] => string(1) "d"
}
Нравится:
0
Карма:
1
Самый лучший вариант это использовать функцию array_intersect().
Данная функция находит пересекающиеся элементы массивов:
Результат:
Данная функция находит пересекающиеся элементы массивов:
<?php
$arrayOne = ['a', 'b', 'c', 'd'];
$arrayTwo = ['c', 'd', 'q', 'w'];
$intersect = array_intersect($arrayOne, $arrayTwo);
print_r($intersect);
Результат:
Array
(
[2] => c
[3] => d
)
(
[2] => c
[3] => d
)
Нравится:
0
Карма:
2