PHP 从数组中删除一个对象返回空数组

马杜山佩雷拉
$cart_array = .....;

Array
(
[0] => item Object([id] => 123 [size_id] => 2)
[1] => item Object([id] => 123 [size_id] => 3))



$cart_array = array_filter(
    $cart_array,
    function ($item) {
        return $item->id != 123 && $item->size_id != 2;
    }
);

预期结果 :

Array
    (
    [0] => item Object([id] => 123 [size_id] => 3))

但这会返回一个空数组($cart_array)。任何帮助将是可观的。谢谢。

sjdaws

这是因为两个项目$cart_array都未通过测试。

<?php

$cart1 = new StdClass;
$cart1->id = 123;
$cart1->size_id = 2;

$cart2 = new StdClass;
$cart2->id = 123;
$cart2->size_id = 3;

$cart_array = array_filter(
    [$cart1, $cart2],
    function ($item) {
        // Items both have an id of 123, therefore this returns false
        return $item->id != 123 && $item->size_id != 2;
    }
);

也许你只想保持尺寸 3?

$cart_array = array_filter(
    [$cart1, $cart2],
    function ($item) {
        // This will keep $cart2 since it has an id of 123 and a size_id not equal to 2 but remove $cart1 since size_id is equal to 2
        return $item->id == 123 && $item->size_id != 2;
    }
);

这里的例子:http : //ideone.com/oqz16S

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

SimpleXML对象数组仅在PHP中返回第一个值

来自分类Dev

忽略PHP中数组中的最后一个对象

来自分类Dev

PHP检查数组中的double并删除最后一个

来自分类Dev

如何从数组php中删除一个值

来自分类Dev

创建一个 PHP 对象数组

来自分类Dev

PHP 使用另一个数组删除数组中的数组

来自分类Dev

在php中为数组返回空值

来自分类Dev

排序一个PHP数组返回新数组

来自分类Dev

排序一个php数组,返回新数组

来自分类Dev

使用php中的另一个数组从数组中删除公共值

来自分类Dev

如何在php中从另一个数组中删除一个数组?

来自分类Dev

从另一个数组返回PHP中的关联数组的函数

来自分类Dev

PHP Array:返回数组中下一个对象的函数(带有数组和当前对象参数)?

来自分类Dev

php返回空的JSON数组

来自分类Dev

删除第一个数组 php

来自分类Dev

PHP 删除重复的数组值,这是一个日期

来自分类Dev

PHP Compact()函数返回一个空数组

来自分类Dev

在php中使用Xpath,返回一个空数组

来自分类Dev

json_encode返回一个PHP数组

来自分类Dev

用PHP返回数组的最后一个值

来自分类Dev

PHP Compact()函数返回一个空数组

来自分类Dev

PHP glob() 返回一个空数组

来自分类Dev

PHP:给一个JSON对象数组命名?

来自分类Dev

在PHP中排序一个奇怪的对象数组

来自分类Dev

从结果数组php获取第一个对象

来自分类Dev

php:创建一个包含升序日期对象的数组

来自分类Dev

PHP - 创建一个新对象数组

来自分类Dev

如何比较两个数组,并从PHP中的一个数组中删除数据?

来自分类Dev

如何使用一个foreach php从数组中删除某些元素