Пошук по файлах на php

Відео: Урок 9 - Переносимо html-код в файл index.php і виводимо модуль пошуку

Пошук по файлах на PHP

Я вже писав статтю про пошуку по базі даних, і вирішив, що для повноти картини, варто написати статтю про реалізації пошуку по файлах на PHP. Наприклад, якщо на Вашому сайті є кілька html-сторінок, і Ви хочете зробити пошук по ним. У цій статті ми розберемо, як це робиться.




Ось функція, яка приймає директорію, а виводить назви файлів, в яких знайдені збіги, а також кількість збігів:

Відео: Пошук дублікатів файлів

lt ;?php
function searchFiles($ dir, $ search){
$ files
= glob($ dir."/*.html") -// Отримуємо все html-файли з директорії
$ results
= array() -// Створюємо масив для результатів пошуку
for($ i =0- $ i lt; count($ files) - $ i++){
/ * Перебираємо всі отримані файли * /
$ str
= strip_tags(file_get_contents($ files[$ i])) -// Розміщуємо вміст файлів в змінну, попередньо забравши всі html-теги
$ count
= substr_count($ str, $ search) -// Шукаємо кількість входжень шуканої рядка в файл
if($ count) $ results[$ files[$ i]]= $ count-// Якщо хоча б 1 входження знайдено, то додаємо файл з кількістю входжень в масив результатів
}
return $ results-// Повертаємо результат
}
$ results
= searchFiles(".","ABC") -// Шукаємо файли в поточному каталозі, в яких входить рядок "ABC"
print_r
($ results) -// Виводимо масив (якщо не знаєте, як по-іншому вивести масив, то Вам сюди)
?gt;



Ось такий простий скрипт пошуку по файлах на PHP. Безумовно, він тривіальний і, майже напевно, Вам доведеться його підлаштовувати під Вашу задачу, але як основу його можна використовувати. І зверніть увагу, що тут є задатки релевантного пошуку, оскільки шукаються не просто файли, в яких є шукана стрічка, але ще і зберігається кількість входжень. В результаті, відсортувавши масив по кількість входжень можна вивести користувачеві результат пошуку з сортуванням за релевантністю.

Поділися в соціальних мережах:

Схожі
Як динамічно отримувати коментарі з бази даних.Як динамічно отримувати коментарі з бази даних.
Реалізація пошуку на сайті через phpРеалізація пошуку на сайті через php
Робота з ftp через phpРобота з ftp через php
Команда del (erase)Команда del (erase)
Пошук по базі даних з сортуванням за релевантністюПошук по базі даних з сортуванням за релевантністю
Команда find - пошук рядка символів в файліКоманда find - пошук рядка символів в файлі
Команда find в linuxКоманда find в linux
Новинки в php7. Частина 7.Новинки в php7. Частина 7.
Як знайти всі посилання на сторінці через phpЯк знайти всі посилання на сторінці через php
Html-файл відкривається як txtHtml-файл відкривається як txt
» » Пошук по файлах на php