#1
| ||||
| ||||
Suchergebnisse "googlifizieren"Gesucht und nicht gefunden: Ansätze wie man Suchergebnisse so darstellt wie das in Suchmaschinen so üblich ist. Also in der Ergebnisliste eine Einleitung der gefundenen Seite darstellen und hierbei jeweils ein bisschen Text vor und nach dem Treffer aus dem Text anzeigen. Da es hierzu in PHP nicht viel zu finden gab (das einzige war dieses Tutorial welches aber eher einem Witz ähnelt) habe ich eine Funktion geschrieben die auch von anderen nutzbar ist. Möglicherweise besteht daran ja Interesse. Der Code erhebt keinen Anspruch auf Perfektion oder Fehlerlosigkeit, Benutzung auf eigene Veranwortung. Die Lizenz ist auch einfach: benutz ihn wie du willst für was du willst. PHP-Code: Die Parameter im einzelnen: $text - der Text der Zusammengefasst werden soll (logisch) $query - entweder ein Suchstring oder ein Array mit Suchwörtern. Wenn es ein String ist wird er automatisch geparsed und in ein Array mit Suchwörtern aufgespalten. $highlight - eine Vorlage zum hervorheben der Suchwörter. Die Vorlage wird via sprintf() bearbeitet. Das bedeutet das %s durch das hervorzuhebende Suchwort ersetzt wird. $teaserLength - Richtwert für die maximale Länge der Zusammenfassung. Kann gerinfügig unter- und überschritten werden. $minGap - minimum an Zeichen die zwischen zwei extrahierten Textstellen im Text sein müssen $minWordLength - die minimale Suchwortlänge, spielt nur eine Rolle wenn $query ein String ist Beispiel: Code: $text = 'eigentlich ist die postgresql ja ganz nett, aber mysql ist ja auch nicht zu verachten. php macht aber vorallem in verbindung mit einem apache webserver spass. man kann das zwar auch im cgi modus betreiben, aber das macht meist eher weniger spass. wie auch immer ist dies ein ganz dämlicher blindtext und ihm sollte nicht mehr beachtung geschenkt werden als unbedingt notwändig. und hier ist jetzt auch schon wieder schluss.'; $query = 'php mysql apache blindtext'; $highlight = '<b>%s</b>'; echo googlifyMe($text, $query, $highlight); Zitat:
__________________ Johannes Klose Calitrix Wiki - Wiki auf Basis von PHP und MySQL Geändert von exe (10.09.2004 um 19:43 Uhr). Grund: noch zwei kleine bugsh behoben |
#2
| |||
| |||
Interessant vielleicht auch der Code des TextSearchImproved-Mod von Wikka: http://wikka.jsnx.com/Mod014fTextSearchImproved |
#3
| ||||
| ||||
Hey danke Exe, genau sowas hab ich für mein Board gesucht *einbau* MfG MaMo __________________ Forensoftware mit integriertem CMS: Viscacha 0.8! |
#4
| ||||
| ||||
Hey danke exe. Das bau ich auch in mein Forum ein. Off-Topic: Benutzt du eigentlich auch das Zend Studio? Die Kommentare sehen so danach aus. |
#5
| ||||
| ||||
Ich hab eben noch zwei kleine Bugs behoben die unter Umständen die Zusammenfassung stark in die Länge ziehen oder stark verkürzen. Wenn ihr die Funktion schon eingebaut habt solltet ihr sie nochmal mit der Version im Eingangsbeitrag ersetzen. Zitat:
Off-Topic: Nicht mehr. Ich habe es früher benutzt, aber auf Dauer war die Java-Oberfläche nicht so praktisch auf meiner uralten 450Mhz Gurke Ich benutze im moment KDevelop, was eigentlich auch ganz brauchbar ist. Die Kommentare sind übrigens nicht "Zend Studio" sondern phpdoc, nachzulesen unter http://www.phpdoc.org __________________ Johannes Klose Calitrix Wiki - Wiki auf Basis von PHP und MySQL |
#6
| |||
| |||
Ich bedanke mich auch mal. Hab zwar aktuell keine Verwendung dafür, aber wie ich mich kenne werd ich das bestimmt gebrauchen können. __________________ Patrick Gotthardt Patrick Gotthardt on Software |
#7
| ||||
| ||||
hübsch, aber das zieht doch ziemlich an der Performance bei einigen Suchergebnissen... __________________ Philipp Gérard Gewöhnliche Menschen denken nur daran, wie sie ihre Zeit verbringen. Ein intelligenter Mensch versucht sie zu nützen. - Arthur Schopenhauer |
#8
| ||||
| ||||
@exe: Das war mir noch nicht bekannt. Danke dir! |
Stichworte |
- |
Themen-Optionen | |
Thema bewerten | |