Как заполнить массив содержимым из папки используя javascript?
Здравствуйте,
столкнулся со следующей прооблемой:
надо заполнить пустой массив названием файлов содержащихся в папке img используя javascript
или немного проще -> можно ли как-либо прочитать названия файлов находящихся внутри папки находящийся в проекте
!!!название файлов не изменять
3 ответов
С помощью обычного javascript нельзя считать файлы из папки.
Для считывания файлов из папки потребуется nodejs и код считывания будет примерно такой:
var fs = require('fs');
var files = fs.readdirSync('/photos/');
Можно считывать файлы из папки и с помощью php и использовать в javascript. Нужно создать php-файл с fileload.php с таким содержимым:
var files = <?php $out = array();
foreach (glob('file/*.html') as $filename) {
$p = pathinfo($filename);
$out[] = $p['filename'];
}
echo json_encode($out); ?>;
И в html файле вставить это:
<script src='fileload.php'></script>
и в javascript считать массив подгруженный в js скрипт.
NodeJS нужно установить сначала.
1. Нужно создать папку, например test
2. Перейти в эту папку и открыть ее в терминале (в гит терминале или в cmd виндоус)
3. В терминале написать npm init и жать enter отвечая на вопросы.
4. Создать папку files в папке test и в ней создать файлы (test1.txt, test2.txt, test3.txt)
5. Создать файл в корне папки text с таким содержимым:
var fs = require('fs');
var files = fs.readdirSync('files/');
console.log(files);
6. Запустить npm install
7. Запустить node index.js и в терминале будут выведены название всех файлов из папки files.
Структура такая проекта:
test
files
test1.txt
test2.txt
text3.txt
index.js
package.json
pakage-lock.json
node_modules
спасибо за ответ.
надо без php.
можете пожалуйста еще популярно объяснить что означает : "Для считывания файлов из папки потребуется nodejs" -- просто запустить через терминал команду нпм старт и код будет работать или надо еще произвести какие-то манипуляции?