Seite 1 von 1

[PHP] Snippet selbst machen?

Verfasst: 05.03.2009, 20:23
von JohnBi
Wie der Titel schon sagt ich habe ne MySQL Datenbank und da habe ich eben Datenfelder mit den entsprechenden Einträgen ...

Ich führe ne Suche aus mit Fulltext-Suche und nun möchte ich genau 250 Zeichen aus dem über 2000 Zeichen langen Text extrahieren und anzeigen - und genau in diesem 250 Wörtern soll eben das Suchwort sich befinden ... Im Prinzip wie bei den Snippets von Google... und am besten mit PHP ...

Wie kann ich das am besten anstellen?

optimal wären 125 zeichen vor dem Suchwort und 125 nach dem Suchwort wenn es leichter zu realisieren wäre - sonst eben mitten im Text

wäre schon Top wenn mir paar Funktionen genannt werden könnten die mir helfen würden - den Rest würde ich dann alleine hinbekommen.

JohnBi

Verfasst:
von

Verfasst: 05.03.2009, 20:36
von TBT
strpos - Stelle ermitteln
substr(text,von,bis) - ausschneiden

Verfasst: 05.03.2009, 20:37
von JohnBi
ok, dank dir - werd mir das mal genauer anschauen - danke

Verfasst: 05.03.2009, 20:40
von net(t)worker
ne... erst ermitteln wo das suchwort ist, dann die beiden stellen ermitteln an denen das Snippet anfangen und enden soll, und dort dann jeweils die wortgrenzen ermitteln, falls man nicht zufällig ein leerzeichen getroffen hat....

Verfasst: 05.03.2009, 20:40
von oliverp19
Hallo,

ich lese hier nun schon ewig mit...nun hab ich mich mal registriert :) Leider war da schon einer schneller...aber vielleicht doch noch ein kleiner Tipp:

Das Ganze müsstest du auch direkt in MySQL machen können, was das Ganze etwas performanter machen sollte. Hierfür kannst du die Funktionen

INSTR()

und

SUBSTRING()

nutzen...die Dokumentation und weitere String-Funktionen, die nützlich sein könnten findest du unter:

https://dev.mysql.com/doc/refman/5.1/de ... tions.html

Grüße
Oli

Verfasst: 05.03.2009, 20:42
von JohnBi
jo, dank dir - werde ich mir auch genauer zu gemüte ziehen und dann eben abwägen welche für mich passender ist ...