SkyeEverest Ответов: 1

Как сканировать каталог и перечислить папки, имя файла и содержимое файлов в формате json?


Моя конечная цель-получить файлы/папки в виде json, как это:

{
    "file1": "file1 contents",
    "file2": "file2 contents",
    "ThisIsAFolder": {
        "fileInsideFolder": "folder contents"
        "fileInsideFolder2": "folder contents"
    }
}


Что я уже пробовал:

<?php
//this file is for aOS

//this gets your files in the directory (Insert starting directory here)
$main = "message_standalone";

$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($main));
$allFiles = array_filter(iterator_to_array($iterator), function($file) {
    return $file->isFile();
});

$filenames = array_keys($allFiles);

//print_r($filenames);

//$filearray=array();

foreach($filenames as $filename){

$filenamens=trim(substr($filename, strpos($filename, '\\') + 1));

$filearray[$filenamens]=htmlentities(file_get_contents($filename));

}

$json=json_encode($filearray, JSON_PRETTY_PRINT);

echo "<pre>";
print_r($json);
echo "<//pre>";

?>

Richard MacCutchan

Так в чем же вопрос?

1 Ответов

Рейтинг:
0

Richard MacCutchan

Следующая строка должна быть удалена, так как она добавляет содержимое каждого файла к выходным данным:

$filearray[$filenamens]=htmlentities(file_get_contents($filename));