Forum Webscript.Ru

Программирование => PHP => Тема начата: Гарик Новиков от 16 Ноября 2001, 00:22:54

Название: открыть папку и прочитать из файлов
Отправлено: Гарик Новиков от 16 Ноября 2001, 00:22:54
доброго врмени суток Уважаемые.

Проблема в следующем.
Есть папка, ее нужно открыть, прочитать и из каждого файла вывести содержимое.
Открыть папку могу....
Прочитать из файла могу....
Вывести на в бровзер могу.....
склеить это все неполучаеться...
обидно понимаешь получается...

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

код вот.... может кто подскажет где обшибаюсь...

$i=0;
$handle=opendir(\'./Files.txt\'); // открыл папку
while ((($file = readdir($handle))!==false))
{
  $i++;
  $Filename=$i;  // это чтобы открывать с 1-го
   if (($file!= "." && $file != "..")!==false)
   {
      $fp=fopen("Files.txt/$Filename.txt","r");  // открыл файл для чтения
      while (!feof ($fp))
      {
          $line = fgets ($fp, 1000);
               list($img,$num,$title,$avtor,$tekst)=split (\'[:]\', $line);
         echo "$img\\n"; // поле с путем прикрепленной картинки
         echo "$num\\n"; // номер файла
         echo "$title\\n"; //заголовок статьи
         echo "$avtor\\n"; // автор
         echo "$tekst\\n "; // сама статья
         echo "
";   
      }
   }
 fclose($fp);
}
?>

Заранее благодарен Гарик.
Название: открыть папку и прочитать из файлов
Отправлено: Britva от 16 Ноября 2001, 00:40:44
сделать проверку, открылся ли файл, т.е.
$fp=@fopen("Files.txt/$Filename.txt","r"); // открыл файл для чтения
после этого:
if($fp != FALSE) {
  while(...) {
  }
  fclose($fp);
}

и @ добавить (жирным выделил)
Название: открыть папку и прочитать из файлов
Отправлено: Гарик Новиков от 17 Ноября 2001, 12:05:37
спасибо за помощь Евгений...
а можно узнать почему неработал мой вариант без @ ???
заранее благодарен Гарик
Название: открыть папку и прочитать из файлов
Отправлено: Britva от 17 Ноября 2001, 12:09:57
@ подавляет сообщение об ошибке если файл не существует.
а проблема в том, что не было проверки на то, открыт ли файл. из-за этого зацикливался while