(PHP 5 >= 5.1.0, PHP 7, PHP 8)
SplFileObject::fscanf — Analyse une entrée d'un fichier suivant un format donné
Lit une ligne depuis un fichier et l'analyse suivant le format
format spécifié.
Les espaces blancs dans la chaîne format correspondent
aux espaces blancs dans la ligne du fichier.
Ceci signifie qu'une tabulation (\t) dans le format
va correspondre à un seul caractère blanc dans le flux d'entrée.
format
Le format interprété pour string décrit
dans la documentation de la sprintf() avec les différences suivantes :
F, g, G et
b ne sont pas supportés.
D représente un nombre décimal.
i représente un nombre entier avec détection de base.
n représente le nombre de caractères traités à ce stade.
s arrête la lecture à chaque caractère d'espacement.
* au lieu de argnum$ supprime
l'affectation de cette spécification de conversion.
varsSi seul 1 paramètre est passé à cette méthode, la valeur analysée sera retournée sous la forme d'un array. Sinon, si des paramètres optionnels sont passés, la méthode retourne le nombre de valeurs assignées. Les paramètres optionnels doivent être passés par référence.
S'il y a plus de sous-chaînes attendues dans le format
que disponibles dans la ligne lue depuis le fichier,
null sera retourné.
Lorsque des paramètres optionnels sont utilisés et que la fin de la ligne
lue depuis le fichier est atteinte avant qu'aucune valeur n'ait été
analysée, -1 est retourné.
Exemple #1 Exemple avec SplFileObject::fscanf()
<?php
$file = new SplFileObject("misc.txt");
while ($userinfo = $file->fscanf("%s %s %s")) {
list ($name, $profession, $countrycode) = $userinfo;
// Faire des opérations sur $name $profession $countrycode
}
?>Contenu de users.txt
javier argonaut pe hiroshi sculptor jp robert slacker us luigi florist it