function index($id) { // folder_id $nodes = array(); if ($id) { $folder = Folder::find_by_id($id); $sub_folders = $folder->folders; $sub_files = $folder->files; } else { // id: 0 // root folder $sub_folders = Folder::find_all_by_parent_folder_id(0); $sub_files = File::find_all_by_folder_id(0); } // 子分类 foreach ($sub_folders as $sub_folder) { $nodes[] = array('id' => $sub_folder->id, 'name' => $sub_folder->name . ' (' . (string) (count($sub_folder->folders) + count($sub_folder->files)) . ')', 'type' => 'folder', 'isParent' => count($sub_folder->files) || count($sub_folder->folders) ? true : false, 'icon' => get_path('/webroot/css/img/diy/folder-close.jpg', true), 'iconOpen' => get_path('/webroot/css/img/diy/folder-open.jpg'), 'iconClose' => get_path('/webroot/css/img/diy/folder-close.jpg')); } // 子零件 foreach ($sub_files as $sub_file) { $nodes[] = array('id' => $sub_file->id, 'name' => $sub_file->name . ' (' . count($sub_file->units) . ')', 'type' => 'file', 'isParent' => count($sub_file->units) ? true : false, 'icon' => get_path('/webroot/css/img/diy/3.png', true)); } echo json_encode($nodes); }