fscanf

(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)

fscanfParses input from a file according to a format

Опис

fscanf(resource $stream, string $format, mixed &...$vars): array|int|false|null

The function fscanf() is similar to sscanf(), but it takes its input from a file associated with stream and interprets the input according to the specified format.

Any whitespace in the format string matches any whitespace in the input stream. This means that even a tab (\t) in the format string can match a single space character in the input stream.

Each call to fscanf() reads one line from the file.

Параметри

stream

Вказівник файлової системи типу resource, якого повертає функція fopen().

format

Це формат інтерпретації рядка string, який описаний в документації про функцію sprintf(), але з деякими відмінностями:

  • Функція не враховує локаль.
  • Специфікатори F, g, G і b не підтримуються.
  • Специфікатор D означає десяткове число.
  • Специфікатор i означає ціле число з визначенням основи.
  • Специфікатор n означає кількість оброблених символів.
  • Специфікатор s зупиняє зчитування після будь-якого символу пропуску.
  • Знак * на відміну від argnum$ забороняє призначення цього специфікатора перетворення.

vars

The optional assigned values.

Значення, що повертаються

If only two parameters were passed to this function, the values parsed will be returned as an array. Otherwise, if optional parameters are passed, the function will return the number of assigned values. The optional parameters must be passed by reference.

If there are more substrings expected in the format than there are available within string, null will be returned. On other errors, false will be returned.

Приклади

Приклад #1 fscanf() Example

<?php
$handle
= fopen("users.txt", "r");
while (
$userinfo = fscanf($handle, "%s\t%s\t%s\n")) {
list (
$name, $profession, $countrycode) = $userinfo;
//... do something with the values
}
fclose($handle);
?>

Приклад #2 Contents of users.txt

javier  argonaut        pe
hiroshi sculptor        jp
robert  slacker us
luigi   florist it

Прогляньте також

  • fread() - Binary-safe file read
  • fgets() - Gets line from file pointer
  • fgetss() - Gets line from file pointer and strip HTML tags
  • sscanf() - Parses input from a string according to a format
  • printf() - Output a formatted string
  • sprintf() - Return a formatted string