将对象数组合并到关联数组

时间:2016-03-03 12:33:45

标签: php arrays

我有一个像这样的对象数组$objects

object(stdClass)#16 (3) {
  ["subcatname"]=>
  string(22) "Air"
  ["categoryid"]=>
  string(4) "1107"
  ["catname"]=>
  string(18) "Equipment"
}
object(stdClass)#17 (3) {
  ["subcatname"]=>
  string(17) "Machines"
  ["categoryid"]=>
  string(3) "108"
  ["catname"]=>
  string(18) "Equipment"
}

我想将每个对象(stdClass)分配给一个关联数组值。所以我的最终数组看起来像这样:

array(18) {
  [0]=>
  object(stdClass)#258 (3) {
    ["subcatname"]=>
    string(22) "Air Recirculation Unit"
    ["categoryid"]=>
    string(4) "1107"
    ["catname"]=>
    string(18) "Catering Equipment"
  }
  [1]=>
  object(stdClass)#257 (3) {
    ["subcatname"]=>
    string(17) "Beverage Machines"
    ["categoryid"]=>
    string(3) "108"
    ["catname"]=>
    string(18) "Catering Equipment"
  }

以前有人做过类似的事吗?我很难获得理想的结果。感谢

编辑 - >

我已尝试过这种方法,但这会遍历每一行,而不是每一组:

$test = array();
        $count =0;

        foreach ($row as $rows) {

            array_push($test, array($count => $rows));
            $count ++;
        }

1 个答案:

答案 0 :(得分:0)

您必须拥有一个集合或其他类型的订购对象,以便迭代流程以执行您想要做的事情。

示例: 如果所有对象都在收集器中,您可以轻松地在表格中按顺序执行此操作

$orderedTabObject = array();
foreach($collectionObject as $object)
{
    array_push($object, $orderedTabObject);
}

此过程可以在处理您的有序对象(集合,数组等等)时发生变化,但过程精神是相同的

您需要阅读如何使用此不同的有序类型进行迭代,以便对流程有序对象进行编码。