Доброго утра, пользователи Тостера
Столкнулся с проблемой при реализации поиска строки в текстовых файлах. Вроде в регулярном выражении я добавил флаг i, но он почему то не работает. Что я делаю не так? Вот код:
function searchAnyWord() {
function searchAny($fileName, $searchText) {
$contents = file_get_contents('./files/' . $fileName);
$pattern = preg_quote($searchText);
$pattern = "/^.*$pattern.*\$/im";
if(preg_match_all($pattern, $contents, $matches)) {
echo "<br>" . "Результат поиска в файле " . $fileName . ": <br>";
echo implode($matches[0], "<br>");
} else {
echo "<br>" . "Нет совпадений в файле " . $fileName . "<br>";
}
}
if ($_POST['word'] != '' && $_POST['word'] != ' ') {
$arSeacrh = GetFiles();
$searchText = $_POST['word'];
foreach ($arSeacrh as $k=>$fileName) {
searchAny($fileName, $searchText);
echo "<br>";
}
} else {
echo "Ошибка, заполните поле поиска!";
}
}