【问题标题】:Loop through all the children item from an array to create JsTree Children Item循环遍历数组中的所有子项以创建 JsTree 子项
【发布时间】:2016-03-14 08:29:51
【问题描述】:

我在为 jQuery JsTree 格式化 JSON 数据时遇到问题。我想在 Root 文件夹下显示许多子项。但是,当我不知道如何遍历所有子项时。以下代码仅打印 children 数组中的 1 个项目。我想打印所有子项。

$children = [];

foreach ($items as $item) {
    $children['id'] = $item['id'];
    $children['text'] = $item['title'];
}

$data = [
    'id' => 1, 
    'text' => 'Root',
    'children' => $children
];

echo json_encode($data);

以上代码打印如下结果:

{
    "id":1,
    "text":"Root",
    "children":{
        "id":"0B_J9f9IAYIKQczFkUERDUHpBYmc",
        "text":"Complete Thesis.doc"
    }
}

【问题讨论】:

    标签: php jquery arrays jstree


    【解决方案1】:

    我自己通过使用数组键分配空数组来解决这个问题。我是这样做的:

    <?php
        $children = [];
    
        foreach ($items as $item => $value) {
            $children[$item]['id'] = $value['id'];
            $children[$item]['text'] = $value['title'];
        }
    
        $data = ['id' => 1, 'text' => 'Root',
            'children' => $children
        ];
    
        echo json_encode($data);
    

    以上代码将以下结果作为 JsTree 的格式化 JSON 字符串返回:

    {"id":1,"text":"Root","children":[{"id":"0B_J9f9IAYIKQemNzVzBhNDg2elE","text":"New Folder"},{"id":"0B_J9f9IAYIKQdkktWEREaHVLMUk","text":"New Folder"},{"id":"0B_J9f9IAYIKQX3pjUU5FTDBkUlE","text":"Erin VZBakker 4 thisis.pdf"},{"id":"0B_J9f9IAYIKQczFkUERDUHpBYmc","text":"Complete Thesis.doc"}]}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-03-29
      • 1970-01-01
      • 2015-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-08
      相关资源
      最近更新 更多