(PHP 4 >= 4.0.1, PHP 5)
fscanf — Обрабатывает данные из файла в соответствии с форматом
Функция fscanf() похожа на
sscanf(), но берёт данные для обработки из файла,
ассоциируемого с handle
, и интерпретирует их
согласно формату format
, который описан в
документации функции sprintf().
Любой пробельный символ в строке формата эквивалентен любому пробельному символу во входящем потоке. Это означает, что даже табуляция \t в строке формата может быть сопоставлена одному символу пробела во входящем потоке данных.
Каждый вызов fscanf() читает одну строку из файла.
Если в функцию переданы только два аргумента, обработанные значения будут возвращены в виде массива. В ином случае, если были переданы необязательные аргументы, функция вернёт количество присвоенных значений. Необязательные аргументы должны быть переданы по ссылке.
Версия | Описание |
---|---|
4.3.0 | До этого релиза максимальное количество символов, которые считывались из файла, составляло 512 (или до первого символа \n - смотря что встретится первым). Теперь длинные строки также будут прочитаны и обработаны. |
Пример #1 Пример использования функции fscanf()
<?php
$handle = fopen("users.txt", "r");
while ($userinfo = fscanf($handle, "%s\t%s\t%s\n")) {
list ($name, $profession, $countrycode) = $userinfo;
//... совершаем какие-либо действия над значениями
}
fclose($handle);
?>
Пример #2 Содержимое файла users.txt
javier argonaut pe hiroshi sculptor jp robert slacker us luigi florist it