In Performanceaufwendig ist die Version, mit der Funktion levenshtein() (sieht wie ein Tippfehler aus, aber der Mensch hieß halt so) die minimale Anzahl an notwendigen Zeichenveränderungen zu berechnen, um vom Suchwort zum möglichen Treffer zu gelangen. Das ist allerdings aufwendig, weil das Suchwort mit jedem Datenbankeintrag verglichen werden muss.
Möglich wäre aber auch noch ein anderer Algorithmus für die ähnlichkeit - Soundex z.B. das geht aber nach der Klangähnlichkeit, nicht nach der Schreibweise. Das würde z.B. eingaben abfangen, bei denen der Suchende weiß wie man es ausspricht, aber nicht wie man es exakt schreibt.
Allerdings ist Soundex sehr sprachspezifisch - sprich englischlastig.