首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对象数组php的数组交集

对象数组php的数组交集
EN

Stack Overflow用户
提问于 2010-05-14 21:50:10
回答 8查看 11.1K关注 0票数 13

我想知道如何对对象数组执行array_intersect。

EN

回答 8

Stack Overflow用户

发布于 2015-05-24 23:06:57

您可以将array_uintersect与spl_object_hash结合使用,示例如下:

代码语言:javascript
复制
    array_uintersect($a, $b, function($a, $b) {
        return strcmp(spl_object_hash($a), spl_object_hash($b));
    });

其中'$a‘和'$b’是要相交的一些对象的数组。

票数 16
EN

Stack Overflow用户

发布于 2010-06-29 22:36:01

nice toString函数已经实现,并被称为序列化;)所以

代码语言:javascript
复制
array_map(
    'unserialize',
    array_intersect(
        array_map(
            'serialize',
            $obj1
        ), 
        array_map(
            'serialize', 
            $obj2
        )
    )
);

我会做这个工作,上面提到的例子不能工作,因为array_intersect也只能处理字符串,有人也提到过

票数 7
EN

Stack Overflow用户

发布于 2010-05-14 21:54:25

array_intersect()返回一个数组,其中包含所有参数中存在的array1的所有值。

然后在这个上下文中(确切地说这个函数),我在php.net上找到了我的答案:

如果你的对象没有实现到的唯一转换,那么你就不能在对象数组上使用它。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2834607

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档