(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