(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)
fscanf — 從文件中格式化輸入
fscanf() 函數和
sscanf() 相似,但是它從與
handle
關聯(lián)的文件中接受輸入并根據指定的
format
(定義于 sprintf()
的文檔中)來解釋輸入。
格式字符串中的任何空白會與輸入流中的任何空白匹配。這意味著甚至格式字符串中的制表符
\t
也會與輸入流中的一個空格字符匹配。
每次調用 fscanf() 都會從文件中讀取一行。
如果只給此函數傳遞了兩個參數,解析后的值會被作為數組返回。否則,如果提供了可選參數,此函數將返回被賦值的數目。 可選參數必須用引用傳遞。
版本 | 說明 |
---|---|
4.3.0 | 在 PHP 4.3.0 之前,從文件中讀入的最大字符數是 512(或者第一個 \n,看先碰到哪種情況)。從 PHP 4.3.0 起可以讀取任意長的行。 |
示例 #1 fscanf() 例子
<?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 users.txt 的內容
javier argonaut pe hiroshi sculptor jp robert slacker us luigi florist it