函数名:fscanf()
适用版本:所有版本的PHP
用法:fscanf() 函数从文件中读取格式化的输入,并将结果存储到变量中。它可以根据指定的格式字符串从文件中读取数据,并将数据存储到指定的变量中。
语法:fscanf(file, format, var1, var2, ...)
参数:
- file:必需。要读取的文件资源或文件名。
- format:必需。指定输入的格式字符串。可以使用格式控制符指定不同类型的输入。
- var1, var2, ...:可选。要存储读取结果的变量。这些变量的数量和类型应该与格式字符串中指定的输入类型相匹配。
返回值:如果成功读取数据,则返回读取的参数数量。如果到达文件末尾,则返回0。如果发生错误,则返回false。
示例: 假设有一个名为 "data.txt" 的文本文件,内容如下:
John 25
Mary 30
$file = fopen("data.txt", "r");
if ($file) {
// 读取文件中的数据并存储到变量中
$name1 = "";
$age1 = 0;
$name2 = "";
$age2 = 0;
fscanf($file, "%s %d", $name1, $age1);
fscanf($file, "%s %d", $name2, $age2);
// 输出读取的数据
echo "Name 1: " . $name1 . ", Age 1: " . $age1 . "\n";
echo "Name 2: " . $name2 . ", Age 2: " . $age2 . "\n";
// 关闭文件资源
fclose($file);
}
输出:
Name 1: John, Age 1: 25
Name 2: Mary, Age 2: 30
上述示例中,我们打开了一个名为 "data.txt" 的文件,并使用 fscanf() 函数从文件中读取了两行数据。通过指定格式字符串 "%s %d",我们将第一行的字符串和整数分别存储到 $name1 和 $age1 变量中,将第二行的字符串和整数分别存储到 $name2 和 $age2 变量中。最后,我们输出了读取的数据。