Fonction sscanf() PHP
Exemple
Analyser la chaîne :
<?php $str = "age:30 weight:60kg"; sscanf($str,"age:%d weight:%dkg",$age,$weight); // Afficher le type et la valeur var_dump($age,$weight); ?>
Définition et utilisation
La fonction sscanf() analyse l'entrée venue de la chaîne en fonction du format spécifié. La fonction sscanf() analyse la chaîne en fonction de la chaîne de format.
Si seuls deux paramètres sont passés à cette fonction, les données sont retournées sous forme d'array. Sinon, si des paramètres supplémentaires sont passés, les données analysées sont stockées dans ces paramètres. Si le nombre de délimiteurs est supérieur au nombre de variables qui les contiennent, une erreur se produit. Cependant, si le nombre de délimiteurs est inférieur au nombre de variables qui les contiennent, les variables supplémentaires contiennent NULL.
Fonctions associées :
Syntaxe
sscanf(string,format,arg1,arg2,arg++)
Paramètres | Description |
---|---|
string | Requis. Définit la chaîne à lire. |
format |
Requis. Définit le format à utiliser. Valeurs de format possibles :
Valeurs de format supplémentaires. Doit être placé entre % et une lettre (par exemple %.2f) :
Remarque :Si plusieurs valeurs de format mentionnées ci-dessus sont utilisées, elles doivent être utilisées dans l'ordre indiqué ci-dessus. |
arg1 | Optionnel. La première variable pour stocker les données. |
arg2 | Optionnel. La deuxième variable pour stocker les données. |
arg++ | Optionnel. Les variables troisièmes et quatrièmes pour stocker les données, etc. |
Détails techniques
Valeur de retour : | Si seuls deux paramètres sont passés à cette fonction, les données sont retournées sous forme d'array. Sinon, si des paramètres supplémentaires sont passés, les données analysées sont stockées dans ces paramètres. Si le nombre de délimiteurs est supérieur au nombre de variables qui les contiennent, une erreur se produit. Cependant, si le nombre de délimiteurs est inférieur au nombre de variables qui les contiennent, les variables supplémentaires contiennent NULL. |
Version PHP : | 4.0.1+ |
Plus d'exemples
Exemple 1
Utilisez les valeurs de format %s, %d et %c :
<?php $str = "If you divide 4 by 2 you'll get 2"; $format = sscanf($str,"%s %s %s %d %s %d %s %s %c"); print_r($format); ?>