如何从对象数组中删除一个元素


How to delete an element from an array of objects in php ?

如何从php数组中删除元素,其中数组由对象组成,我不知道必须删除的对象索引?

首先找到对象的索引(通过遍历数组或二进制搜索),然后在该索引处取消数组的设置。

您必须以某种方式识别您的对象。

使用foreach在不知道键的情况下遍历数组,如果能以某种方式匹配,则删除对象。

foreach($arr as &$val){
    if($val == ...){ //whatever test you need to inditify your obj
        unset($val);
        break;
    }
}
unset($val); // unset it again cause is a reference to your last traversed value

你可以用它来查看一个对象是否在一个数组中。

function inArray($myObject, $array)
{
  foreach($array as $object)
  {
      if($myObject === $$object)
          return true;
  }
  return false;
}

你可以随意变换这个函数。这是基本知识。我建议你阅读一些编程原理