![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 31 Pomógł: 0 Dołączył: 4.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
Witam. Próbuje stworzyć wyszukiwarkę plików na serwerze. Jej działanie ma polegać na tym, że wpisuje szukaną fraze i skrypt przeszukuje wszystkie katalogi i pliki na serwerze w poszukiwaniu tej frazy i wyświetla liste plików w jakich ona się znajduje. Mam taki skrypt on działa, ale (jest jedno ale) nie szuka w plikach php, znaczy szuka, ale nie wiem na jakiej zasadzie jeśli umieszczę np w pliku:
To nie znajdzie żadnych ze słów. A chodzi mi o to by szukało np. zmiennej. Proszę o pomoc, niżej kod PHP skryptu:
Z góry dziękuję. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 798 Pomógł: 307 Dołączył: 13.05.2009 Skąd: Gubin/Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem czy dobrze zrozumiałem. Ma przeszukiwać katalogi w poszukiwaniu plików o konkretnej frazie tak? Bo na początku zrozumiałem, że ma je otwierać i szukać frazy, ale po kodzie nie widzę tego aby miał go otwierać.. Bardzo dobrze byłoby tutaj zastosować, o ile chodzi o samo wyszukiwanie plików według nazwy, po podanej frazie; bardzo dobre użycie wówczas RecursiveDirectoryIterator jak i RecursiveIteratorIterator.
Napisałem na swoje potrzeby loader klas w php. Przeszukuje on katalogi które mu podam, oraz podkatalogi wcześniej podanych katalogów. I w sumie bardzo ładnie to działa, bo tworzy sobie mapę plików w postaci tablicy gdzie kluczem jest nazwa klasy a wartością ścieżka do pliku. Jeżeli np raz byś przeszukał sobie wszystkie pliki stworzył taką mapę plików, i aktualizował ją co jakiś czas (może być cron, może być cache które ma jakiś czas żywotności) i całość może nawet dość szybko chodzić. Jeżeli chodzi o przeszukiwanie takiej mapy, frazami które są nie pełne, to jest: masz przykładowo plik o nazwie "ala ma kota.txt" a ktoś w polu wyszukiwarki wpisał: "ala ma" to w sumie mogło by to trochę mniej optymalnie wyglądać, ale chyba bardziej optymalnie niż za każdym razem przeszukiwać dziesiątki katalogów w poszukiwaniu danej frazy. Jeżeli przeszukiwanie katalogów za każdym razem, to nie problem, to zawsze można użyć glob który uprości sporo kodu. Ten post edytował by_ikar 4.07.2011, 09:25:39 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.10.2025 - 11:49 |