strtr
Remplace des caractères dans une chaîne
&reftitle.description;
stringstrtr
stringstring
stringfrom
stringto
Signature alternative (non supporté avec les arguments nommés) :
stringstrtr
stringstring
arrayreplace_pairs
Si trois arguments sont utilisés, strtr retourne la chaîne
string après avoir remplacé chaque caractère (de un octet)
du paramètre from par son équivalent dans le paramètre
to, chaque occurence de $from[$n] est
remplacée par $to[$n], où $n est une valeur
valide pour chaque argument.
Si from et to sont de
tailles différentes, les caractères en trop dans l'un ou l'autre
seront ignorés. La taille de string sera la même que celle
des valeurs retournées.
Si seuls deux arguments sont utilisés, le deuxième doit être un array
de la forme array('from' => 'to', ...). La donnée retournée est
une string dans laquelle toutes les occurrences des clés du tableau ont
été remplacées par les valeurs correspondantes. Les clés les plus longues seront d'abord
utilisées. Une fois une sous-chaine remplacée, sa nouvelle valeur ne sera plus recherchée.
Dans ce cas, les clés et les valeurs peuvent avoir n'importe quelle taille, en supposant
qu'il n'y a pas de clé vide; aussi, la taille de la valeur retournée peut différer de celle
de string. Cependant, cette fonction sera la plus efficace lorsque toutes
les clés ont la même taille.
&reftitle.parameters;
string
La chaîne à traiter.
from
Les caractères de départ.
to
Les caractères de remplacement.
replace_pairs
Le paramètre replace_pairs peut être utilisé
à la place de to et from
et dans ce cas, ce sera un tableau sous la forme
array('from' => 'to', ...).
Si replace_pairs contient une clé qui est une
string vide (""), l'élément est ignoré ;
à partir de PHP 8.0.0 une E_WARNING est levé dans ce cas.
&reftitle.returnvalues;
Retourne la &string; modifiée.
&reftitle.examples;
Exemple avec strtr
]]>
L'exemple suivant montre l'utilisation de strtr avec
deux arguments. Notez la préférence des remplacements (h n'est
pas utilisé car il y a des correspondances plus longues) et comment le texte
remplacé n'est pas réutilisé par la suite.
Exemple avec strtr et 2 arguments
"-", "hello" => "hi", "hi" => "hello");
echo strtr("hi all, I said hello", $trans);
?>
]]>
&example.outputs;
Les deux comportements sont différents. Avec trois arguments,
strtr remplacera les octets; avec deux, elle peut
remplacer des sous-chaines plus longues.
Comparaison de comportement de strtr
"01");
echo strtr("baab", $trans);
?>
]]>
&example.outputs;
&reftitle.seealso;
str_replace
preg_replace