PHP Genauigkeit der Suchergebnisse

Katsumi

Lt. Commander
Dabei seit
Sep. 2002
Beiträge
1.318
Ich gehe mehrmals mit unterschiedlichen Kriterien durch eine Datenbank und lege die Ergebnisse in ein PHP Array ab. Nachdem ich nun alle Ergebnisse im PHP Array habe, würde ich diese gern nach Genauigkeit ausgeben wollen.

Beispielsweise der Suchbegriff: "Peter Klaus"

Peter Klaus = 100%
Peter von Klaus = weniger 100%
Peter-Joachim Klaus = weniger 100%

Kam verständlich rüber was ich möchte? Hat jemand eine Idee oder kennt eine PHP Klasse die das realisieren könnte?
 

Surviv0r

Lt. Junior Grade
Dabei seit
Nov. 2008
Beiträge
459
Hi, ich vermute mal, dass das was du meinst Relevanz ist, wie z.B. auch hier in den Suchergebnissen.

Das ist ein MySQL-feature:
http://dev.mysql.com/doc/refman/5.1/de/fulltext-search.html

die MATCH() Methode gibt dabei den Relevanz-Wert zurück, den man dann mit PHP in einen Prozentwert umrechnen kann.

Ich habe jetzt nicht gefunden, wie das mit PHP gehen könnte - heisst aber nicht, dass es nicht geht ;)

Ich hoffe, ich konnte trotzdem helfen.

Viele Grüße
Surviv0r
 

Katsumi

Lt. Commander
Ersteller dieses Themas
Dabei seit
Sep. 2002
Beiträge
1.318
Levenshtein hilft da leider nicht wirklich weiter. Es berechnet lediglich den Unterschied der Zeichenanzahl zwischen zwei Strings. Das sagt so leider gar nichts aus und ergibt von Fall zu Fall total seltsame Ergebnisse.
 

scor

Ensign
Dabei seit
Jan. 2008
Beiträge
225
Levenshtein hilft da leider nicht wirklich weiter. Es berechnet lediglich den Unterschied der Zeichenanzahl zwischen zwei Strings. Das sagt so leider gar nichts aus und ergibt von Fall zu Fall total seltsame Ergebnisse.
..was einer Treffergenauigkeit entsprechen würde.

Bedingung dafür ist natürlich das du eine Liste an Items hast mit denen du vergleichen kannst.

Alternativ wie oben schon geklinkt mit Match() lösen, setzt dann halt mysql 5.1 vorraus.

die folgenden Artikel könnten aber auch was für dich sein:
http://www.justin-cook.com/wp/2006/11/15/build-a-search-query-with-relevance-in-php-mysql/
http://r937.com/keyword_relevance.html
 
Top