Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.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
显示baobab php类嵌套集中的树_Php_Set_Nested - Fatal编程技术网

显示baobab php类嵌套集中的树

显示baobab php类嵌套集中的树,php,set,nested,Php,Set,Nested,我使用Baobab PHP类来处理NestedSet。 我知道如何将树显示为en ul li递归菜单 有什么想法吗 ======= == === === ============= tree_id id lft rgt name ======= == === === ============= 1 13 1 18 Accueil 1 14 2 3 Accueil 1 15 4 1

我使用Baobab PHP类来处理NestedSet。 我知道如何将树显示为en ul li递归菜单

有什么想法吗

=======  ==  ===  ===  =============
tree_id  id  lft  rgt  name     
=======  ==  ===  ===  =============
      1   13    1   18  Accueil
      1   14    2    3  Accueil
      1   15    4   13  Produits     
      1   16    14  15  Liens
      1   17    16  17  Mentions légales 
      1   18    5   6   PC      
      1   19    7   8   MAC      
      1   20   9   12   Linux
      1   21   10  11   Ubuntu
=======  ==  ===  ===  =============
相关函数是getTree(),它返回如下对象的对象:

Array
(
[0] => BaobabNode Object
    (
        [id] => 14
        [lft] => 2
        [rgt] => 3
        [parentNode] => BaobabNode Object
            (
                [id] => 13
                [lft] => 1
                [rgt] => 18
                [parentNode] => 
                [fields_values] => Array
                    (
                        [tree_id] => 1
                        [name] => Accueil
                        [slug] => accueil
                    )

                [children] => Array
 *RECURSION*
            )

        [fields_values] => Array
            (
                [tree_id] => 1
                [name] => Accueil
                [slug] => accueil
            )

        [children] => Array
            (
            )

    )

[1] => BaobabNode Object
    (
        [id] => 15
        [lft] => 4
        [rgt] => 13
        [parentNode] => BaobabNode Object
            (
                [id] => 13
                [lft] => 1
                [rgt] => 18
                [parentNode] => 
                [fields_values] => Array
                    (
                        [tree_id] => 1
                        [name] => Accueil
                        [slug] => accueil
                    )

                [children] => Array
 *RECURSION*
            )

        [fields_values] => Array
            (
                [tree_id] => 1
                [name] => Produits
                [slug] => produits
            )

        [children] => Array
            (
                [0] => BaobabNode Object
                    (
                        [id] => 18
                        [lft] => 5
                        [rgt] => 6
                        [parentNode] => BaobabNode Object
 *RECURSION*
                        [fields_values] => Array
                            (
                                [tree_id] => 1
                                [name] => PC
                                [slug] => pc
                            )

                        [children] => Array
                            (
                            )

                    )

                [1] => BaobabNode Object
                    (
                        [id] => 19
                        [lft] => 7
                        [rgt] => 8
                        [parentNode] => BaobabNode Object
 *RECURSION*
                        [fields_values] => Array
                            (
                                [tree_id] => 1
                                [name] => MAC
                                [slug] => mac
                            )

                        [children] => Array
                            (
                            )

                    )

                [2] => BaobabNode Object
                    (
                        [id] => 20
                        [lft] => 9
                        [rgt] => 12
                        [parentNode] => BaobabNode Object
 *RECURSION*
                        [fields_values] => Array
                            (
                                [tree_id] => 1
                                [name] => Linux
                                [slug] => linux
                            )

                        [children] => Array
                            (
                                [0] => BaobabNode Object
                                    (
                                        [id] => 21
                                        [lft] => 10
                                        [rgt] => 11
                                        [parentNode] => BaobabNode Object
 *RECURSION*
                                        [fields_values] => Array
                                            (
                                                [tree_id] => 1
                                                [name] => Ubuntu
                                                [slug] => ubuntu
                                            )

                                        [children] => Array
                                            (
                                            )

                                    )

                            )

                    )

            )

    )

[2] => BaobabNode Object
    (
        [id] => 16
        [lft] => 14
        [rgt] => 15
        [parentNode] => BaobabNode Object
            (
                [id] => 13
                [lft] => 1
                [rgt] => 18
                [parentNode] => 
                [fields_values] => Array
                    (
                        [tree_id] => 1
                        [name] => Accueil
                        [slug] => accueil
                    )

                [children] => Array
 *RECURSION*
            )

        [fields_values] => Array
            (
                [tree_id] => 1
                [name] => Liens
                [slug] => liens
            )

        [children] => Array
            (
            )

    )

[3] => BaobabNode Object
    (
        [id] => 17
        [lft] => 16
        [rgt] => 17
        [parentNode] => BaobabNode Object
            (
                [id] => 13
                [lft] => 1
                [rgt] => 18
                [parentNode] => 
                [fields_values] => Array
                    (
                        [tree_id] => 1
                        [name] => Accueil
                        [slug] => accueil
                    )

                [children] => Array
 *RECURSION*
            )

        [fields_values] => Array
            (
                [tree_id] => 1
                [name] => Mentions légales
                [slug] => mentions-legales
            )

        [children] => Array
            (
            )

    )
)

我不知道如何循环递归地显示ulli的html导航

有什么想法吗

=======  ==  ===  ===  =============
tree_id  id  lft  rgt  name     
=======  ==  ===  ===  =============
      1   13    1   18  Accueil
      1   14    2    3  Accueil
      1   15    4   13  Produits     
      1   16    14  15  Liens
      1   17    16  17  Mentions légales 
      1   18    5   6   PC      
      1   19    7   8   MAC      
      1   20   9   12   Linux
      1   21   10  11   Ubuntu
=======  ==  ===  ===  =============

感谢您的帮助。

您应该能够执行以下操作:

function displayTree($nodes) {
    echo '<ul>';
    foreach ($nodes->getChildren() as $childNode) { // $childNode is a BaobabNode Object
        echo '<li>';
        echo $childNode->getName(); // or equivalent method to get the name
        if (count($childNode->children) > 0) {
            displayTree($childNode->children);
        }
        echo '</li>';
    }
    echo '</ul>';
}
函数显示树($nodes){
回声“
    ”; foreach($nodes->getChildren()作为$childNode){/$childNode是一个baobabonode对象 回音“
  • ”; echo$childNode->getName();//或获取名称的等效方法 如果(计数($childNode->children)>0){ displayTree($childNode->children); } 回音“
  • ”; } 回声“
”; }
调用此函数时,使用getTree()的结果作为参数