PHP – Array_diff с двумя массивами разной размерностиPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 PHP – Array_diff с двумя массивами разной размерности

Сообщение Anonymous »

У меня есть два массива:

Код: Выделить всё

$haystack = array("rowid" => array("100", "200"), "description" => array ("something", "something else"));
$needle = array("rowid" => array("200", "300", "400"), "description" => array ("something else", "other", "other else"), "test" => "bye");
Я хочу выполнить array_diff с $needle и $haystack, но получаю ошибку, потому что массив $needle многомерен, но «тестовый» ключ имеет только одно измерение:< /p>

Код: Выделить всё

foreach ($needle as $key => $value) :
$left[$key] = array_diff($needle[$key],$haystack[$key]);
endforeach;

Предупреждение: array_diff(): аргумент №1 не является массивом
Предупреждение:
array_diff(): аргумент #2 не является массивом


Как мне решить проблему?
Мне нужно поддерживать только массив $left " значения rowid" и "description" (я могу отказаться от «тестового» значения).

$left должно быть:

Код: Выделить всё

Array
(
[rowid] => Array
(
[0] => 300
[1] => 400
)

[description] => Array
(
[0] => other
[1] => other else
)

)
Спасибо за помощь!

Подробнее здесь: https://stackoverflow.com/questions/280 ... -dimension
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»