에 밀어 넣습니다. 재귀 적으로 모든 폴더를 읽고 다차원 배열에 삽입하는 스크립트를 만들려고합니다.디렉토리의 모든 폴더를 나열하고 배열
그래서 예제 경로를 만들어이 스크립트를 테스트합니다. 내 폴더 :
{
"name": "1",
"pathTo": "TestFolder/1",
"children": [{
"name": "11",
"pathTo": "TestFolder/11",
},
{
"name": "12",
"pathTo": "TestFolder/12",
},
{
"name": "13",
"pathTo": "TestFolder/13",
}
]
}
내가 시도 :
$folders = array();
function listFolder($dir,$folders){
$prov = array();
$ffs = scandir($dir);
foreach($ffs as $ff){
if($ff != '.' && $ff != '..'){
$prov[] = $ff;
if(is_dir($dir.'/'.$ff)) {
$folders['children'] = listFolder($dir.'/'.$ff,$prov);
}
}
}
return $folders;
}
$arr = listFolder('TesteJSON',$folders);
echo json_encode($arr);
내가 어떻게 할 수 있습니다
TesteFolder
-1
-11
-12
-13
는 JSON 출력을 기대하는 내?
분별 코드 들여 쓰기의 비트 코드는) 읽을 만들기 위해 먼 길을 간다와 b) ** 디버깅 ** – RiggsFolly
또한, 귀하의 "구성 출력"는 실패 JSON 구문 검사. 당신은 정말로 당신의 결과물로 무엇을 원합니까? "11"은 "TesteFolder"의 하위 디렉토리 인 "1"의 하위 디렉토리입니까? 명확성을 위해,'find '의 결과를 보여줄 수 있습니까? -t type d -print'를 사용하고 JSON이 유효한지 확인하십시오. – ghoti
}} 추가로, 내가 편집 할 것입니다. 예 "11"은 "1"의 하위 디렉토리이며 "TesteFolder"의 하위 디렉토리입니다. –