Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获得父母和孩子以及孩子的孩子_Php - Fatal编程技术网

Php 获得父母和孩子以及孩子的孩子

Php 获得父母和孩子以及孩子的孩子,php,Php,我设法得到了父母和孩子,但我很难得到孩子 这就是页面的外观 [0] => array(1) { ["PARENT"] => string(0) "" } [1] => array(2) { ["PARENT"] => string(10) " Hang TED" ["CHILD"] => array(2) { [0] => array(1) { ["CHILD"] => string(13)

我设法得到了父母和孩子,但我很难得到孩子

这就是页面的外观

  [0] => array(1) {
    ["PARENT"] => string(0) ""
  }
  [1] => array(2) {
    ["PARENT"] => string(10) " Hang TED"
    ["CHILD"] => array(2) {
      [0] => array(1) {
        ["CHILD"] => string(13) "110379 110626"
      }
      [1] => array(1) {
        ["CHILD"] => string(13) "110417 110626"
      }
    }
  }

请分享$pages数组的结构。我想您需要使用递归函数来执行n级parsing@satdev86我更新了我的问题。我不知道如何获得孩子的答案。您的问题需要提供更多信息,您使用了$page对象,不知道它是如何构造的。您正在使用数组键作为父\页\ id,但模型数组数据未与代码内联。。请重新措辞你的问题。然而,我可以展示一些功能性的方法来获得它done@satdev86好的,谢谢你能告诉我怎么做吗?谢谢我已经做了4个小时了。谢谢你,老兄,我要试试这个。我真的很感谢你的帮助。谢谢你努力帮助我:)。
<?php

$pages = array('0'=>array(
                'parent'=> 'parent0',
                'child' => array('name' => 'test', 'children' => array(
                        array('child' => 'child1'),
                        array('child' => 'child2')                    
                    ))
               ),
               '1' => array('parent'=>'parent1')
               );


$arr_pages = getDetails($pages);

function getDetails(array $pages) {
    $result = array();
    if(count($pages)) {
        foreach($pages as $key => $value) {
             $cnames=array();
            if($value['parent']) $result[$key]['parentname'] = $value['parent'];
            if($value['child']['name']) $result[$key]['childname'] =  $value['child']['name'];
            if(is_array($value['child']['children'])) {
                   foreach($value['child']['children'] as $cval) $cnames[] = $cval['child'];
                    $result[$key]['childrenofchild'] = implode(',',$cnames);
            }

        }
    }
    return $result;
}
Array
(
    [0] => Array
        (
            [parentname] => parent0
            [childname] => test
            [childrenofchild] => child1,child2
        )

    [1] => Array
        (
            [parentname] => parent1
        )

)