У меня есть две коллекции: «Инструкции» и «Известные».В основном я беру новый набор «Инструкций» и проверяю, отличается ли что-то от того, что «Известно».
Итак, количество не велико.Я получаю информацию:
$Instructions = Instruction::all();
$Knowns = Known::all();
Теперь я ищу различия, и я попробовал каждый из этих трех методов:
$IssuesFound = $Instructions->diff($Knowns);
$IssuesFound = $Instructions->diffKeys($Knowns);
$IssuesFound = $Instructions->diffAssoc($Knowns);
Дело в том, "«Инструкция» или «Известный» - это предмет с 17 атрибутами, и любой из этих атрибутов может отличаться.Я хочу сравнить атрибуты «Инструкции» с соответствующим атрибутом «Известных».(Оба элемента имеют одинаковые ключи, элементы бота имеют атрибут Reference
, который действует как уникальный идентификатор.
Я обнаружил, что эти методы дают мне элемент, который отличается, но нескажите мне, какие отдельные атрибуты являются несоответствующими.
foreach ($IssuesFound as $issue)
{
dd($issue);
}
Таким образом, метод, подобный $IssuesFound = $Instructions->diffKeys($Knowns);
, даст элемент ххх другой, но я не вижу, как узнать, какой атрибут элемента этоЭто не так. Нет, если я не начну вложить циклы и перебирать все атрибуты - чего я пытаюсь избежать.
Как мне это сделать?
Заранее спасибо. (Laravel5,6)