 |
Point fort :
Phonex PHP, classe de recherche par ressemblance phonétique des chaînes
Description :
Tout comme soundex2, ceci est une adaptation php de l'algo phonex qui a été créé, et décrit ici : http://sqlpro.developpez.com/cours/soundex/ par Frédéric BROUARD.
PRECISIONS SUR L'UTILITE :
Ces algo, soundex, soundex2, phonex, metaphone, assigne un code à une chaîne donnée. Ce code est calculé en fonction de la phonétique, donc de la prononciation de cette chaîne.
En l'occurence, les 2 algo présents par défaut dans php, soundex () et metaphone () ne prennent en compte que la prononciation anglaise.
Celui-ci, basé sur phonex (un algo plus performant que soundex ou soundex2), est francisé.
Evidemment, 2 chaînes différentes peuvent avoir le même code. Par exemple, ici, 'gros' aura le même code phonex que 'grau'.
Ce qui veut dire, dans le cadre d'une recherche sur une base de données contenant des noms, par exemple, on peut effecyuer une recherche phonétique aussi! Bref, le mec a parlé avec un cilent par téléphone, mais il ne s'est pas comment s'écrit exactement son nom de famille...gros, graus, grau, graux, greaux...? etc... Il tape par exemple gros, et effectue une recherche phonex. Cette recherche lui ressortira tous les noms dont le code phonex est le même que 'gros'. Donc si le client s'appelait 'Graux', il le trouvera.
Couplé à l'algo de levenshtein (fonction interne php) en plus, on peut avoir une recherche phonétique par pertinence...les codes identiques en premiers, puis ceux un peu différents, etc...jusqu'à un degré de différence voulu.
Le mieux, dans le cadre d'une bdd, est évidemment de stocker le code phonex dans la base, histoire de ne pas le recalculer à chaque recherche.
|
 |