Php 查找对象集之间的差异

Php 查找对象集之间的差异,php,laravel,Php,Laravel,我有两个对象,想找出它们之间的区别。仅返回差异的数组或对象。这两个对象如下所示 { "new": { "crc_code": "00", "serial_number": "239-03", "reason": "Ir/b4c - no center rib", "project_id": 9, "wafer_id": 1, "equipment_status_code_id": 7,

我有两个对象,想找出它们之间的区别。仅返回差异的数组或对象。这两个对象如下所示

{
    "new": {
        "crc_code": "00",
        "serial_number": "239-03",
        "reason": "Ir/b4c - no center rib",
        "project_id": 9,
        "wafer_id": 1,
        "equipment_status_code_id": 7,
        "plate_container_id": null,
        "supplier_id": 1,
        "container_slot_id": null,
        "plate_quality_id": 1
    },
    "old": {
        "crc_code": "00",
        "serial_number": "239-03",
        "reason": "Ir/b4c - no center rib",
        "project_id": 9,
        "wafer_id": 1,
        "equipment_status_code_id": 2,
        "plate_container_id": null,
        "supplier_id": 1,
        "container_slot_id": null,
        "plate_quality_id": 2
    }
}
最好的办法是什么

更新有人问我已经尝试了什么

沿着这条线的东西

array_udiff($new, $old, function ($obj_a, $obj_b) {
                    return  strcmp($obj_a, $obj_b);
                }
            );
但是没有到达那里

使用:

使用:


到目前为止你试过什么?你想在这里找到什么不同?预期的输出是什么?您想要对象值之间的差异吗?或者一个对象中存在而另一个对象中不存在的键?@tejuc值差异。到目前为止,您尝试了什么?您想在这里找到什么差异?预期的输出是什么?您想要对象值之间的差异吗?或者一个对象中存在而另一个对象中不存在的键?@tejuc值差。这里不是php极客<代码>数组差异关联($old->new,$new->old)对我没有任何帮助。然而,删除新的和旧的都会返回结果。这里不是一个php极客<代码>数组差异关联($old->new,$new->old)对我没有任何帮助。然而,删除新的和旧的正在返回结果。
return array_diff_assoc($obj->new, $obj->old);
// convert object to array
$arr = json_decode(json_encode($obj), true);

// get the diff
$diff = array_diff($arr['new'], $arr['old']);

// result
array:1 [
  "equipment_status_code_id" => 7
]