Подскажите пожалуйста какой есть самый быстрый способ сравнить два массива
--$arr1----
array(3) {
[0]=>
array(2) {
["url"]=>
string(36) "/1/1/1"
["cnt"]=>
string(1) "1"
}
[1]=>
array(2) {
["url"]=>
string(31) "/2/2/2"
["cnt"]=>
string(1) "1"
}
[2]=>
array(2) {
["url"]=>
string(31) "/3/3/3"
["cnt"]=>
string(1) "1"
}
}
--$arr2----
array(2) {
[0]=>
array(2) {
["url"]=>
string(36) "/1/1/1"
["cnt"]=>
string(1) "1"
}
[1]=>
array(2) {
["url"]=>
string(31) "/2/2/2"
["cnt"]=>
string(1) "1"
}
}
Сейчас я использую такой вариант
Иду по второму массиву и если во втором массиве есть значение которого нету в первом то выполняю действие
foreach ($arr2 as $arr2s) {
$key = null;
$key = array_search( $arr2s['url'] , array_column($arr1, 'url'));
//Если не нашел будет действие
if ( $key == false) {
var_dump ($arr2s);
}
}
Проблема в том что в массиве 4 000 000 значений и это занимает очень много времени, подскажите пожалуйста более быстрый способ