Парсинг файлов в цикле

Статус
В этой теме нельзя размещать новые ответы.

Stripe

Участник
Регистрация
20 Окт 2007
Сообщения
164
Реакции
9
Есть следующий код:
PHP:
//Получаем список файлов в папке
        $handle = opendir('rb');
            while ($file = readdir($handle)) {
			    if ($file != "." and $file != "..") { 
                    $a[] = $file;//Присвоение массиву полученных данных
                    echo ''.$file.'<br>';
					}
            }
            closedir($handle);
                echo ('<br><br>');
                echo $a[20];
//загоняем все в цикл и получаем контент
while ($files){
$content = file_get_contents('http://'.$domain.''.$a[].'');
echo $content;
}
Собственно как распарсить текст из файлов в цикле?
 
Ты вообще в курсе что такое парсинг ?
Парсингом в нашем контексте работы принято называть процесс выделения необходимой информации с определенных web страниц и сохранение полученной информации.
так вот что бы тебе помочь нужно минимум знать что и откуда тебе нужно получить

минимум -- пример файла на входе и пример файла на выходе
 
Ну если ты посмотрел на код то увидел наверное что первые 10 строк тягают имена файлов из папки, которые потом подставляются в переменную $content. Так вот, проблема у меня в том, что бы на выходе получить не 1 расперсенный файл (как если бы было не $a[], а $a[0]), а получить контент всех файлов что есть в папке., тоесть $a[0...n]. В данном примере $a[] не работает, как можно задать на парсинг весь массив $a[]? Что в файлах не важно, это дело третье и решенное.
 
PHP:
while ($files){
$content = file_get_contents('http://'.$domain.''.$a[].'');
echo $content;
}
это полный бред. цикл неработоспособен изначально и вообще вырван из контекста. нормальный код надо давать. читает папку локальную, далее дергает почему то по урлу с немыслимыми параметрами в вечном цикле.
 
Может такой цикл будет работать

PHP:
for($i=0;$i<count($a);$i++){
$content = file_get_contents('http://'.$domain.''.$a[$i].'');
echo $content; }
 
Может такой цикл будет работать
PHP:
for($i=0;$i<count($a);$i++){
$content = file_get_contents('http://'.$domain.''.$a[$i].'');
echo $content; }
Хорошо, задам вопрос по другому: А как надо тогда сделать? Выше приведенный код - весь.
 
PHP:
$a[] = $file;//Присвоение массиву полученных данных

вернее будет так

PHP:
$a[] = 'rb/'.$file;//Присвоение массиву полученных данных
 
PHP:
$handle = opendir('rb');
            while ($file = readdir($handle)) {
			    if ($file != "." and $file != "..") { 
                    $a[] = $file;//Присвоение массиву полученных данных
                    echo ''.$file.'<br>';
					}
            }
            closedir($handle);
                echo ('<br><br>');
                echo $a[20];

$tmp=count($file)-1;
for($i=0; $i<=$tmp; $i++)
{
$content = file_get_contents('rb/'.$a[$i].'');
echo $content;
echo ('<br>1<br>');
}

Вот тут echo $content; выводится на страницу только контент первого файла, как дернуть контент остальных файлов?
 
Что то я не пойму, зачем считывать локально список файлов, а потом их открывать через хттп. Возможно файлы там пхп (или чтото подобное) и они генерят чегото, что нужно потом какимто образом результат обработать/отпарсить ?
Есди тебе нужно весь контент в одной переменной используй просто
PHP:
for($i=0;$i<count($a);$i++){
$content .= file_get_contents('http://'.$domain.'/rb/'.$a[$i]);
}  
echo $content;
Если массив с содержимым то
PHP:
for($i=0;$i<count($a);$i++){
$content[$i] = file_get_contents('http://'.$domain.'/rb/'.$a[$i]);  
echo $content[$i];}
В случае если его ($content) нужно дополнительно обработать я бы использовал регекспы. Например
PHP:
preg_match_all("/<p>(.*)<br>\r\n<a href=\"(.*)\">.*<\/a><\/p>/isU", $content, $matches, PREG_PATTERN_ORDER);
т.е. обрати внимание на функцию preg_match_all Для просмотра ссылки Войди или Зарегистрируйся
 
Есди тебе нужно весь контент в одной переменной используй просто
PHP:
for($i=0;$i<count($a);$i++){
$content .= file_get_contents('http://'.$domain.'/rb/'.$a[$i]);
}  
echo $content;
Я правильно понимаю, что этот вариант дергает контент из первого фала, выводит его на страницу, потом контент из сдледующего файла и выводит его на страницу? Вопрос в том, что контент с каждой страницы мне надо обработать регуляркой и добавить его в базу как отдельную запись.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху