(PHP 4 >= 4.0.1, PHP 5)
fscanf — Analiza la entrada desde un archivo de acuerdo a un formato
La función fscanf() es similar a
sscanf(), excepto que toma su entrada desde un archivo
asociado con handle
e interpreta la
entrada de acuerdo al parámetro format
especificado, que es
descrito en la documentación de sprintf().
Cualquier espacio en blanco en la cadena de formato coincide con cualquier espacio en blanco en el flujo de entrada. Esto significa que incluso una tabulación \t en la cadena de formato puede coincidir con un simple caráter espacio en el flujo de entrada.
Cada llamada a fscanf() lee una línea del archivo.
Si sólo se pasaron dos parámetros a esta función, los valores analizados serán devueltos como una matriz. De otro modo, si se pasaron los parámetros opcionales, la función devolverá el número de valores asignados. Los parámetros opcionales pueden ser pasados por referencia.
Versión | Descripción |
---|---|
4.3.0 | Antes de esta verisión, el número máximo de caracteres leídos desde el archivo era 512 (o hasta el primer \n, lo que sucediera primero). Pero ahora, se pueden leer y analizar líneas de longitud arbitraria. |
Ejemplo #1 Ejemplo de fscanf()
<?php
$gestor = fopen("usuarios.txt", "r");
while ($userinfo = fscanf($gestor, "%s\t%s\t%s\n")) {
list ($nombre, $profesión, $código_país) = $userinfo;
//... hacer algo con los valores
}
fclose($gestor);
?>
Ejemplo #2 Contenido de usuarios.txt
javier argonaut pe hiroshi sculptor jp robert slacker us luigi florist it