Имеется html-файл, который нужно обработать по такому сценарию: фрагмент 1 фрагмент 2 новый фрагмент То есть, первая строка - "от", вторая - "до", третья - "заменить на". Строки 4, 5, 6 и т.д. аналогичны. Всё это в текстовом файле. Как это сделать с помощью php?
Ну например так: PHP: <?php $arr=file("pattern.txt"); $len=count($arr); if ($len%3!=0) die ("Неверные данные в файле"); $htmlFile=file_get_contents("myFile.html"); for (i=0;i<len;i=i+3){ $from=$arr[$i]; $to=$arr[$i+1]; $rep=$arr[$i+2]; $pattern="#$from(.*?)$to#s"; preg_replace($pattern, $rep,$htmlFile); } ?> Замечания: 1. Если не хочется использовать синтаксис регулярных выражений в txt файле, то нужно экранировать спец символы. 2. Регулярное выражение может не работать, я его не проверял. 3. Можно попробовать поиграться с файловыми и строковыми функциями и вообще отказаться от регулярных выражений.
Выдаёт ошибку Код (Text): Parse error: syntax error, unexpected '=', expecting ';' in Z:\home\localhost\www\pars.php on line 10
то же самое ещё и так пробовал: $content=preg_replace($pattern, $rep,$htmlFile); echo $content; не действует почему-то
Значит я где-то ошибся. =)) Проверьте правильные ли данные в переменных $from, $to, $rep. Составьте правильное регулярное выражение на простых данных и расширьте его до любых данных.