(PHP 5 >= 5.1.0, PHP 7, PHP 8)
SplFileObject::fscanf — Разбирает строку файла в соответствии с заданным форматом
Читает строку из файла и разбирает её в соответствии с заданным форматом
format
.
Любые пробелы в строке format
соответствует
любому пробелу в строке из файла. Это означает, что
символ табуляции (\t
) в строке формата может соответствовать
одному пробелу в строке файла.
format
Интерпретируемый формат для параметра string
,
который описан в документации функции sprintf()
со следующими отличиями:
F
, g
, G
и
b
.
D
обозначает десятичное число.
i
обозначает целое число с определением системы счисления.
n
обозначает количество символов, обработанных на текущий момент.
s
останавливает чтение на любом символе пробела.
*
вместо argnum$
подавляет
присвоение данной спецификации преобразования.
vars
Дополнительные строки форматирования.
Если передан только один параметр, распознанные в строке значения будут помещены в массив. Если переданы дополнительные строки форматирования, функция вернёт количество шаблонов, с которыми совпала строка. Необязательные параметры должны передаваться по ссылке.
Пример #1 Пример использования SplFileObject::fscanf()
<?php
$file = new SplFileObject("misc.txt");
while ($userinfo = $file->fscanf("%s %s %s")) {
list ($name, $profession, $countrycode) = $userinfo;
// Работаем с $name $profession $countrycode
}
?>
Содержимое файла users.txt
javier argonaut pe hiroshi sculptor jp robert slacker us luigi florist it