Фильтровать строки двумерного массива, связывая ключи первого уровня с другим массивом с аналогичной структурой.Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Фильтровать строки двумерного массива, связывая ключи первого уровня с другим массивом с аналогичной структурой.

Сообщение Anonymous »

У меня есть два массива:
$haystack = [
"rowid" => ["100", "200"],
"description" => ["something", "something else"]
];
$needle = [
"rowid" => ["200", "300", "400"],
"description" => ["something else", "other", "other else"],
"test" => "bye"
];

Я хочу выполнить array_diff() с $needle и $haystack, но получаю ошибку, потому что $needle Массив многомерен, но ключ test имеет только одно измерение.
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 ... array-with
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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