Разбор нескольких HTML / текстовых файлов - PullRequest
0 голосов
/ 11 января 2011

Привет! Мне нужна помощь в ситуации, когда у меня есть папка «слайды», и у меня есть несколько текстовых / html-файлов, например: slide1.html slide2.html slide3.html и так далее .....

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

<h2>Title of the Slide</h2>
<p><a href="http://mydomain.com"><img src="tick_icon.jpg" width="227" height="227" alt="icon" longdesc="http://longdescription" /></a></p>
<p>Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.</p>

3 свойства Название, изображение и описание. По одному в каждой строке.

У меня есть 10-12 таких файлов. Я хотел функцию, которая будет зацикливать и анализировать все эти файлы в папке с именем 'slides' и возвращать значения каждой строки (из 3 строк) как переменные, чтобы я мог поместить их в свой код для макета.

Ответы [ 2 ]

1 голос
/ 11 января 2011

Вы можете использовать

foreach(glob('slides/*.html') as $fileName) {
    $fname = basename( $fileName );
    $curArr = file($fname);
    $slides[$fname ]['title'] = $curArr[0];
    $slides[$fname ]['image-links'] = $curArr[1];
    $slides[$fname ]['description'] = $curArr[2];
}

, и в итоге вы получите один большой массив $slides, который будет иметь имена файлов в качестве ключей и 3 вспомогательных ключа, title, image-links и description.Это предполагает, что каждый из «слайдов» имеет расширение .html и что содержание каждого слайда определенно состоит из 3 строк.

0 голосов
/ 11 января 2011

На каком языке вы хотите это?HTML не является языком программирования.Вы также не можете выполнить это в Javascript, так как в нем нет подпрограмм обработки файловой системы, и почти наверняка вам не разрешат разбираться со структурой каталогов сервера.

Вы можете сделать это в PHP, используя что-то вроде:

<?php
    $filelist = glob("/path/to/files/slide*.html");
    foreach($filelist as $file) {
        echo <<<EOL
<a href="/url/to/files/$file">$file</a><br />
EOL
}
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...