Cet article décrit une méthode alternative pour faire des recherches dans une base de données. Il est certain que de faire des recherches textuelles (exact string comparaison) et l'utilisation d'expression régulière est très utile. Mais parfois nous avons besoin d'un petit coup de pouce pour trouver ce que nous cherchons. Heureusement pour nos, PHP offre des fonctions qui aide à faire des recherches phonétiques. Ces fonctions peuvent être très puissantes à condition de penser à les utiliser.
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 17 nov. 2006 à 08:09
Hello,
ben moi je trouve ça forcément intéressant, ayant écrit 2 algo allant dans ce sens (enfin : ayant traduit 2 algo allant dans ce sens, en PHP) :
http://www.phpcs.com/codes/PHONEX_36561.aspx est une réécriture en PHP de l'algo Phonex. Puissant, mais parfois sortant des résultats un peu trop éloignés à mon goût.
http://www.phpcs.com/codes/SOUNDEX-FRANCAIS_36539.aspx La version francisée de Soundex. Moins puissant comme code, mais parfois plus adapté.
Ces algo marchant avec des clefs, il est nécessaire de stocker les clefs des mots à rechercher dans la base de données, sous peine de sérieusement ralentir le système : on calcule alors juste la clef du mot (ou des mots) saisi par l'utilisateur, et on la compra avec les clefs stcokées. Sinon il faut chaque fois recalculer les clefs des mots de la bdd...