Fonction metaphone() de PHP

La fonction metaphone()


PHP references des fonctions PHP

 (PHP 4, PHP 5)

metaphone — Calcule la clé metaphone

La fonction metaphone()

Définition et utilisation

La fonction metaphone() calcule la clef metaphone d'une chaîne.

Une clef metaphone représente comment une chaîne retentit si dit par une personne qui parle anglais.

La fonction metaphone() peut être employée pour des applications d'épellation.

Cette fonction renvoie la clef metaphone de la chaîne sur le succès, ou false à l'échec.

Syntaxe

              metaphone (chaîne, longueur)
           
 
Paramètre Description

chaîne

Requis. Spécifie la chaîne à vérifier

longueur

Facultatif. Ce paramètre restreint la clé métaphone retournée à une longueur de phonemes caractères. La valeur par défaut est 0, ce qui signifie qu'aucune limitation ne sera appliquée.


Note : la fonction metaphone() est similaire à la fonction soundex() : elle créée une clé similaire pour des mots dont la prononciation est proche. C'est une fonction qui est plus précise que soundex() car elle prend en compte la prononciation anglaise. La clé metaphone générée est de taille variable.

Metaphone a été développée par Lawrence Philips <lphilips at verity dot com>. Cette méthode est décrite dans le livre ["Practical Algorithms for Programmers", Binstock & Rex, Addison Wesley, 1995].


Exemple 1 Sélectionner le code

              <?php
              var_dump(metaphone('programming'));
              echo "<br />" ;
              var_dump(metaphone('programmer'));
              ?>
           
 

Le résultat du code ci-dessus sera :

 string(7) "PRKRMNK"

string(6) "PRKRMR"

Exemple 2

Dans cet exemple nous employons la fonction metaphone() sur deux mots de retentissement semblables :

Sélectionner le code

              <?php
              var_dump(metaphone('programming',5));
              echo"<br />";
              var_dump(metaphone('programmer',5));
              ?>
               
           
 

Le résultat du code ci-dessus sera :


 string(5) "PRKRM"

string(5) "PRKRM"


Par carabde 22 Aout 2014