(PHP 4 >= 4.0.1, PHP 5)
fscanf — Analyse un fichier en fonction d'un format
fscanf() est similaire à sscanf() , mais elle prend comme entrée un fichier, associé à handle et l'interprète en fonction du format format . Si seulement deux paramètres sont passés à la fonction, les valeurs analysées seront retournées sous forme de tableau. Si des arguments optionnels var1 sont passés, la fonction retournera le nombre de valeurs assignées. Les options doivent être passées par référence.
Tous les caractères blancs de la chaîne de formatage correspondent à autant d'espaces dans le flux d'entrée. Cela signifie qu'une tabulation \t dans la chaîne de format peut remplacer un espace simple dans le flux d'entrée.
Exemple 792. Exemple avec fscanf()
<?php
$handle
=
fopen
(
"users.txt"
,
"r"
);
while (
$userinfo
=
fscanf
(
$handle
,
"%s\t%s\t%s\n"
)) {
list (
$name
,
$profession
,
$countrycode
) =
$userinfo
;
//... traitement des données
}
fclose
(
$handle
);
?>
Exemple 793. Fichier utilisateurs.txt
javier argonaute pe hiroshi sculpteur jp robert hockeyuer us luigi fleuriste it
Note: Avant PHP 4.3.0, le nombre maximum de caractères lus dans le fichier était de 512, ou bien jusqu'à la première nouvelle ligne "\n " : en fait, le premier des deux. Depuis PHP 4.3.0, des lignes de n'importe quelle taille peuvent être lues.
Voir aussi fread() , fgets() , fgetss() , sscanf() , printf() et sprintf() .