我正在使用fgets()提取我用另一个程序创建的txt文件的第一行,并将其保存为字符串。问题是,我想将每个单词指定为不同的变量。
这是我的txt文件的第一行:
1435055708,10.9336,8.2295,11.8359,8.2734,10.8750,8.2148,14.6670,12.9922,
这是我的代码:
<?php
$outputFile = fopen("output.txt", "r") or die("Unable to open data log file!");
$firstLine = fgets($outputFile);
echo $firstLine;
?>
这只是将行存储为字符串$firstLine。
我试图把这条线分成9个变量
Timestamp = 1435055708
Channel 0 = 10.9336
Channel 1 = 8.2295
...and so on
如果文件中的数据结构始终相同,则可以执行以下操作:
$parts = explode(',', $firstLine);
list($timestamp, $channel0, $channel1, ...) = $parts;
第一行将把字符串分割成一个数组(每个逗号分隔的值都将成为数组中的一个新值)。
第二行将获取数组值,并将它们分配给所需的变量。
当然,所有这些都可以合并成一行:
list($timestamp, $channel0, $channel1, ...) = explode(',', fgets($outputFile));
@MaGnetas解决方案是正确的,只是一种解释explose将用分隔符","分隔第一行,并返回一个零索引数组,您可以按原样使用该数组或创建一个列表
$arr = explode(',',$firstLine);