Отображать все текстовые документы в папке в HTML div?

#php #jquery #html

#php #jquery #HTML

Вопрос:

У меня есть папка отзывов в виде .txt документов.

Я хочу иметь возможность загружать их в панель «обзор витрины» на сайте. Таким образом, это продемонстрировало бы, какие обзоры у нас уже есть.

Я выяснил с помощью PHP, как получить форму для сохранения информации в полях в виде .txt файла, но теперь мне интересно, как мне поместить все .txt файлы в div?

У меня div настроен на прокрутку, поэтому, если у меня есть, скажем, пять отзывов, просматривающий пользователь может прокрутить, чтобы прочитать все пять из них.

Все, что я видел до сих пор, похоже, говорит только «как поместить ОДИН файл в div», helloworld.txt но все мои. txt документы имеют разные имена.

Комментарии:

1. Можем ли мы посмотреть, что вы пробовали до сих пор.

2. Если вы знаете, как сделать это один раз, что мешает вам сделать это еще четыре раза?

3. @Lamelemon Потому что имена файлов не могут быть статическими. Я не могу встроить их в HTML. Он должен быть динамическим, потому что они называются по дате их создания. Разве что, как вы думаете, если бы я сделал так, чтобы имена файлов были больше похожи на числа… скажите «r1.txt , r2.txt , r3.txt » вместо того , чтобы «Oct18.txt » или что у тебя есть… Вы думаете, это могло бы работать лучше, если бы я использовал какой-то цикл FOR?

Ответ №1:

Если вы хотите загрузить все *.txt файлы в каталог, вас может заинтересовать glob() что-то вроде этого.

 $contents = '';
foreach(glob('/path/to/files/*.txt') as $txtFile) {
    $contents .= file_get_contents( $txtFile );
}
echo $contents;
  

Способ, которым это работает, заключается в том, что glob() функция ищет текстовые файлы в указанном каталоге. Это возвращает массив имен файлов.

Затем foreach() конструкция выполняет итерацию по этому массиву. На каждой итерации $txtFile переменная устанавливается равной следующему значению в списке файлов.

file_get_contents() затем считывает текстовый файл в строку, которая добавляется для $content указания .= оператора.

Обратите внимание, что это не выполняет никакого форматирования, вы можете обернуть каждый обзор в отдельный элемент блока или что-то в этом роде.

Комментарии:

1. Это PHP, верно? Я не очень хорошо владею языком, простите меня. Есть ли способ контролировать

2. По-видимому, enter — это не «разрыв строки», а «отправить»… Есть ли способ контролировать, куда идет «эхо»? Например, если я хочу вывод в определенном div. Если при этом будут получены все файлы «txt» в каталоге, то это именно то, что мне нужно.

3. Да, это PHP. Вы можете разместить этот фрагмент кода где угодно, даже встроенным в ваш HTML-файл. Просто оберните это в <?php ?> теги.

4. Разве $txtFile не является переменной? Его значение уже изначально определено кодом или мне нужно указать его самостоятельно?

5. Он создается оператором foreach . Я добавлю более подробное объяснение того, как это работает…