sprintf
str_getcsv
Fonctions sur les chaînes de caractères
PHP Manual

# sscanf

(PHP 4 >= 4.0.1, PHP 5)

sscanf — Analyse une chaîne à l'aide d'un format

### Description

mixed sscanf ( string `$str` , string `$format` [, mixed `&$...` ] )

sscanf() est l'inverse de la fonction printf(). sscanf() lit des données dans la chaîne `str`, et l'interprète en fonction du format `format`, qui est décrit dans la documentation de la fonction sprintf().

Tous les caractères blancs dans la chaîne `format` correspondent à un caractère blanc dans la chaîne `str`. Cela signifie que même une tabulation \t dans la chaîne de format peut correspondre à un simple espace dans la chaîne `str`.

### Liste de paramètres

`str`

  La chaîne à analyser.

`format`

  Le format interprété pour la chaîne `str`, qui est décrit dans la documentation de la fonction sprintf() avec les différences suivantes :

  - La fonction n'est pas sensible à la locale courante.
  - F, g, G et b ne sont pas supportés.
  - D correspond aux nombres décimals.
  - i correspond aux entiers avec une détection de la base.
  - n correspond aux nombres de caractères analysés.
`...`

  Optionnellement, vous pouvez passer des variables dans ce paramètre, par référence qui contiendront les valeurs de l'analyse.

### Valeurs de retour

Si seuls deux paramètres sont fournis, les valeurs trouvées seront retournées sous forme de tableau. Sinon, les valeurs seront placées dans un tableau. Si l'argument optionnel est passé, la fonction retournera le nombre de valeurs assignées. Le paramètre optionnel doit être passé par référence.

### Exemples

Exemple #1 Exemple avec sscanf()

`<?php
// Lecture d'un numéro de série
list($serial) = sscanf("SN/2350001", "SN/%d");
// et la date de fabrication
$mandate = "January 01 2000";
list($month, $day, $year) = sscanf($mandate, "%s %d %d");
echo "Le produit $serial a été fabriqué le : $year-" . substr($month, 0, 3) . "-$day\n";
?>`

Si des paramètres optionnels sont passés, sscanf() retournera le nombre de valeurs assignées.

Exemple #2 sscanf() - utilisation des paramètres optionnels

`<?php
// lit les informations d'auteur, et génère une entrée DocBook
$auth = "24\tLewis Carroll";
$n = sscanf($auth, "%d\t%s %s", $id, $first, $last);
echo "<author id='$id'>
<firstname>$first</firstname>
<surname>$last</surname>
</author>\n";
?>`

### Voir aussi

- fscanf() - Analyse un fichier en fonction d'un format
- printf() - Affiche une chaîne de caractères formatée
- sprintf() - Retourne une chaîne formatée

sprintf
str_getcsv
Fonctions sur les chaînes de caractères
PHP Manual