我经常遇到这样一种情况,我有两个对象集合(数组或 IteratorAggregate 类)并且需要比较这两个列表。
我的意思是:
- 检测重复对象(检测重复对象的逻辑因情况而异)
- 添加新对象
- 删除不在其他列表中的对象
本质上,我正在寻找类似 array_diff
的对象。到目前为止,我一直在为每种类型的集合一遍又一遍地编写相同的逻辑。显然,由于重复对象的条件因情况而异,因此没有单一的解决方案。但是,是否存在一种人们发现可以优雅地处理此问题的通用模式或抽象?
最佳答案
spl_object_hash
将帮助您确定两个对象是否相同。
关于php - PHP 中对象的差异集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3198221/