【问题标题】:Php array of objects holding objects. Add a variable to an existing object保存对象的对象的 PHP 数组。将变量添加到现有对象
【发布时间】:2012-05-08 00:43:56
【问题描述】:

我想构建一个包含子对象的页面对象数组

我有两个函数,一个是创建父链接。

我遍历父链接并找到子链接。

我想向父链接添加一个子对象数组的属性。

如果可能,我想对每个孩子进行递归,直到找不到孩子为止。

我希望这是有道理的。

function get_links(){
   $links = array();
   $parent_links = $this->pages_model->get_by_parent(0);//where parent_id = 0;
   $count = 0;
   if(isset($parents_links)&&(count($parent_links)>0)){
       foreach($parent_links as $l){
           $children = $this->get_child_links($l->id);//array _ push results
           if($children != false){
               $l->children = $children;
           }else{
               $l->children = FALSE;
           }
           unset($children);
       }
   }
   return $parent_links;
}

function get_child_links($parent_id){
   $links = $this->pages_model->get_by_parent($parent_id);
   return $links;
}

【问题讨论】:

    标签: php arrays object recursion loops


    【解决方案1】:

    首先,不要这样做

    function get_child_links($parent_id){
       $links = $this->pages_model->get_by_parent($parent_id);
       return $links;
    }
    

    这样做

    function get_child_links($parent_id){
       return $this->pages_model->get_by_parent($parent_id);
    }
    

    它会稍微加快引擎的速度

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-13
      • 2018-09-06
      • 2016-07-18
      相关资源
      最近更新 更多