@kolomat

Как для callback array_udiff сделать сверку по нескольким ключам?

Добрый вечер подскажите по такому вопросу. Есть несколько массивов
$key1 = [
'order_id' => '111',
'shop' => 'test1'
];
$key2 = [
'order_id' => '111',
'shop' => 'test2'
];
$result = array_udiff($key1, $key2, 'keyCompare');

function keyCompare($key1, $key2) {
        $val1 = $key1['order_id'];
        $val2 = $key2['order_id'];
        return strcasecmp($val1, $val2);
}

Функция работает и выполняет свои задачи, но хотелось бы сделать еще дополнительную проверку по ключу shop
Например, если совпадает order_id, но не совпадает shop в массив result записівался результат.
Буду благодарен за любой совет и помощь
  • Вопрос задан
  • 60 просмотров
Решения вопроса 1
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
function keyCompare($key1, $key2) {
        $val1 = $key1['order_id'].'|'.$key1['shop'];
        $val2 = $key2['order_id'].'|'.$key2['shop'];
        return strcasecmp($val1, $val2);
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы