包含对象的Php对象数组。向现有对象添加变量

包含对象的Php对象数组。向现有对象添加变量,php,arrays,object,recursion,loops,Php,Arrays,Object,Recursion,Loops,我想构建一个包含子对象的页面对象数组 我有两个函数,一个用于创建父链接 我通过父链接创建并查找子项 我想添加一个属性,它是父链接的子对象数组 如果可能的话,我想对每个子对象进行递归,直到找不到子对象为止 我希望这是有道理的 function get_links(){ $links = array(); $parent_links = $this->pages_model->get_by_parent(0);//where parent_id = 0; $count

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

我有两个函数,一个用于创建父链接

我通过父链接创建并查找子项

我想添加一个属性,它是父链接的子对象数组

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

我希望这是有道理的

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;
}

首先,不要这样做

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);
}
它使发动机稍微加速了一点