За последние 24 часа нас посетили 62018 программистов и 1677 роботов. Сейчас ищут 954 программиста ...

функция во второй раз не работает

Тема в разделе "PHP для новичков", создана пользователем prohodiltut, 18 фев 2017.

  1. prohodiltut

    prohodiltut Активный пользователь

    С нами с:
    4 фев 2017
    Сообщения:
    21
    Симпатии:
    2
    Задача довольно простая. Найти позицию совпавшего текста в файле.
    Решил примерно так. Но это если файл в каталоге один, а когда появляется два или более, то возникает две ошибки Вот почему не идет поиск по другим файлам?
    PHP:
    1. function find_textpos($fn)      
    2.    {
    3.    
    4.           $filetext = file($fn, FILE_IGNORE_NEW_LINES);
    5.      
    6.             foreach($filetext as $line)
    7.              {
    8.                echo "<br />".$line,"&nbsp;&nbsp;";
    9.                preg_match_all("blablabla", $line, $matches, PREG_OFFSET_CAPTURE);
    10.              
    11.                 print_r ($matches)."<br /><br />";
    12.              };
    13.          
    14.      
    15.    };
    16. if (isset($_POST['submit']))
    17. {
    18.  
    19. $dir = "c:";
    20.  
    21.      
    22.     $dir_handler = opendir($dir);
    23.        {
    24.              while (($filename = readdir($dir_handler)) !== false)
    25.                     {
    26.                         find_textpos($filename);
    27.                     };
    28.     };
    29.                 };  closedir($dir_handler);
    30.          
    31.  
    32. };
    33.      };
    failed to open stream: No such file or directory in - ругается на второй файл
    и еще Invalid argument supplied for foreach()
     
    #1 prohodiltut, 18 фев 2017
    Последнее редактирование модератором: 19 фев 2017
  2. prohodiltut

    prohodiltut Активный пользователь

    С нами с:
    4 фев 2017
    Сообщения:
    21
    Симпатии:
    2
    Всё, тему закрыл. Решение пришло.
     
    denis01 нравится это.