php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 13-03-2002, 01:37
hOk
 Newbie
Links : Onlinestatus : hOk ist offline
Registriert seit: Jul 2001
Beiträge: 137
hOk ist zur Zeit noch ein unbeschriebenes Blatt
Question

Hi Leute,
ich möchte eine Suchmachine für eine Webseite schreiben.
--> ohne boolsche Algebra, einfacher Zeichenkettenvergleich.

...hatte hier im Forum auch schon ne Super Hilfe bekommen.

Doch ein paar Fragen zur Performance und zum Aufbau einer
professionellen Suche hätte ich noch.

Bisher ist mein Plan:
nach der Eingabe des Suchstrings werden alle Seiten
eingelesen html_gestrippt und getolowercased um dann
mit strstr Suchwort und Inhalt zu vergleichen.

Doch wie schaut es mit der Performance aus?
(ca. 100 sollen eingelesen und durchsucht werden)

Wäre da eine Indezierung besser?

Und wenn ja was wäre da ein Ansatz den ich verfolgen könnte,
eine Datenbank steht dafür leider nicht zur Verfügung.

Ich hab leider keine wirklich gute Idee nur einen
Ansatz mit haken, für die Indezierung:

Die gesammte Seite wird nach jeder Aktualisierung
neu geparst.
- Dabei wird jedes Wort als Schlüssel in einem Array
gespeichert.
- Wenn nun ein längeres Wort auftaucht dann ersetzt
es das kürzere ($index[auto] wird von $index[autobahn]
ersetzt

>>> Das Problem ist dann das ich die Schlüssel nicht mehr
mit Regex ansprechen kann und somit: "auto" nicht mehr
"autobahn" findet.

Ich weiss nicht mehr weiter und habe irgendwie das Gefühl
auf dem Holzweg zu sein.

Über ein paar Tips bzw. Ansätze würde ich mich sehr freuen,
nette Grüße, hOk
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 13-03-2002, 21:43
Titus
 PHP Master
Links : Onlinestatus : Titus ist offline
Registriert seit: Jan 2001
Ort: im Rodgau
Beiträge: 4.292
Titus ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also, ein Skript zur "Neuindizierung" hast du ja anscheinend. Wenn nicht: Bau dir eins, das zu jeder zu durchsuchenden Datei 'dateiname.ext' eine Datei 'dateiname.ext.stripped' anlegt, in der du strtolower(striptags(Text)) ablegst.
Später durchsuchst du dann nur noch die .stripped-Datei

Es ist sinnvoll, das Datum der idx-Datei mit dem des Originals zu vergleichen, damit nur aktualisierte Dateien neu indiziert werden.
----

Da zu erwarten ist, dass einige Suchbegriffe häufiger vorkommen, kannst du zu den häufigsten die Ergenisse gleich in einer Indexdatei 'index.txt' speichern. Da könntest du für jeden Begriff eine Zeile reservieren; die könnte z.B. so aussehen:

"Suchbegriff in Anführungszeichen wg. eventueller Leerzeichen" (Anzahl Aufrufe) (Datum letzte Suche) Dateiname_1 Dateiname_2 ... Dateiname_n

Anzahl und Datum mit rein, um seltener eingegebene Begriffe zu erkennen, und zB bei der Neuindizierung aus der Datei zu entfernen).
Bei der Neu-Indizierung muss natürlich diese Datei auch aktualisiert werden.
__________________
mein Sport: mein Frühstück: meine Arbeit:

Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.
Mit Zitat antworten
  #3 (permalink)  
Alt 14-03-2002, 19:01
hOk
 Newbie
Links : Onlinestatus : hOk ist offline
Registriert seit: Jul 2001
Beiträge: 137
hOk ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hey vielen Dank, und super Ideen, so
werde ich das machen....:-)

viele nette Grüße, hOk
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

Microweber CMS

Open source, drag and drop website builder

13.01.2020 Berni | Kategorie: HTML5/ EDITOR
PhoneGap Apps mit JS, CSS3 und HTML5 erstellen ansehen PhoneGap Apps mit JS, CSS3 und HTML5 erstellen

PhoneGap, Framework zur Erstellung hybrider Applikationen für mobile Endgeräte.

13.01.2020 Berni | Kategorie: App-Entwicklung
Bo)Tickets

Bo)Tickets bietet Ihnen eine Schnittstelle für Kundenanfragen an. In dem Script definieren Sie Supportbereiche, also zum Beispiel „Technik, Buchhaltung, Support“. Ihre Kunden können dann über ein Formular eine Anfrage abschicken.

31.12.2019 bocombo | Kategorie: PHP/ Ticketsystem
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 03:24 Uhr.