За последние 24 часа нас посетили 22522 программиста и 1057 роботов. Сейчас ищут 676 программистов ...

Поиск слов в файле(txt)

Тема в разделе "PHP для новичков", создана пользователем Zhassulan, 11 апр 2019.

  1. Zhassulan

    Zhassulan Новичок

    С нами с:
    11 апр 2019
    Сообщения:
    3
    Симпатии:
    0
    здравствуйте, наткнулся на проблему. Короче, делаю программу, чтоб делать морфологический разбор слов. Есть textarea, где пишешь предложение любое, и программа должна искать каждое слово в файле и выводить на экран. а файле данные такие:
    дела!Аыр
    как!Сма
    привет!Длм​
    Например пишешь "Привет как дела" и он должен выводить:Привет(Длм) как(Сма) дела(Аыр).
    А сейчас у меня есть код чтоб выводить на экран все б хорошо если только он не по очереди ищет. То есть, ищет сразу все слова одновременно и какое слово первый попадается то и пишет: дела(Аыр)
    как(Сма)
    привет(Длм)
    и +к этому он выводит каждое слово через абзац, а мне надо что бы в ряд выводил.
    Вот код:
    PHP:
    1. if (isset($_POST["submit"])) {
    2.     if (($h = fopen("vrem.txt", "r"))) {
    3.         $texts = explode(' ', $_POST["text"]);
    4.         $buffer = [];
    5.         while (($line = fgets($h)) !== false) {
    6.             list($word, $substr) = explode("!", $line);
    7.             foreach ($texts as $text) {
    8.                 if ($word == $text) {
    9.                     $buffer[] = $text;
    10.                     echo "<span style='color:green'>$word ($substr)</span>";
    11.                 }
    12.             }
    13.         }
    14.  
    15.          fclose($h);
    16.      if (($buffer = array_diff($texts, $buffer))) {
    17.         echo '<span style="color:red" class="cmenu1" id="cmenu1"> ' . join(' ', $buffer) . '</span>';
    18.         }
    19.     }
    20. }