[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сравнение масивов
Pulse
Есть два массива:
Array ( [0] => Array ( [name] => 1 ) [1] => Array ( [name] => 2 ) [2] => Array ( [name] => 3 ) - $array1


Array ( [0] => Array ( [name] => 1 ) [1] => Array ( [name] => 2 ) - это $array2


array_diff($array1[0], $array2[0]);

при print_r результата - пустой массив Оо

Как мне получить разницу между двумя массивами, т.е значение 3 из $array1?



Спустя 15 минут, 3 секунды (15.11.2010 - 22:34) kirik написал(а):
Цитата (Pulse @ 15.11.2010 - 14:19)
т.е значение 3 из $array1?

Как вы собираетесь получить значение 3, если сравниваете нулевые элементы обоих массивов. Да даже если сравнивать целые массивы - ничего не выйдет. array_diff не проходит по вложенным массивами, нужно делать через цикл.

Спустя 11 часов, 2 минуты, 56 секунд (16.11.2010 - 09:37) linker написал(а):
К сожалению тут даже через циклы не пройдет. А почему бы не использовать массивы вида
$array1 = array('name' => array(1, 2, 3));
$array2 = array('name' => array(1, 2));
print_r(array_diff($array1['name'], $array2['name']));
тогда очень замечательно получается результат "3", плюс экономия памяти под массив.

Спустя 6 часов, 26 минут, 11 секунд (16.11.2010 - 16:03) Pulse написал(а):
В принципе уже переделал, просто вывел массивы в одномерный и спокойно сравнил. Всё равно всем спасибо за ответы!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.