PHP Conference Japan 2024

SplFileObject::fscanf

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

SplFileObject::fscanf根据格式解析来自文件的数据

描述

public SplFileObject::fscanf(string $format, mixed &...$vars): array|int|null

从文件中读取一行,并根据指定的format进行解释。

format字符串中的任何空格都匹配文件中该行中的任何空格。这意味着,即使\t在格式字符串中,也可以匹配输入流中的单个空格字符。

参数

format

string的解释格式,在sprintf()的文档中有描述,但以下有所不同

  • 函数不考虑区域设置。
  • FgGb不受支持。
  • 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

参见

  • fscanf() - 根据格式解析来自文件的数据
  • sscanf() - 根据格式解析来自字符串的数据
  • printf() - 输出格式化字符串
  • sprintf() - 返回格式化字符串

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top