尝试回显.txt中的所有文本行

时间:2019-02-21 16:18:57

标签: php html

这是我的php代码

<?php
$myFile = "hidata.txt";
$fh = fopen($myFile, 'r');
$theData = fgets($fh);
fclose($fh);
echo ('<li>' . $theData . '</li>');
?>

这是我的hidata.txt中的内容

data1
data2
data3

我希望我的代码像这样按行回显所有文本

<li>data1</li>
<li>data2</li>
<li>data3</li>

但是它仅回显<li>data1</li>

如何回显所有行,并且每次在.txt文件中添加新行时,它将自动出现在页面中。

2 个答案:

答案 0 :(得分:2)

fgets从文件中提取一行,您可以遍历文件以处理整个文件

尝试

<?php
$myFile = "hidata.txt";
$fh = fopen($myFile, 'r');
while(false !== ($theData = fgets($fh))) {
    echo ('<li>' . $theData . '</li>');
}
fclose($fh);
?>

答案 1 :(得分:1)

您可以将其分解为数组,然后回显为foreach

$theData = "data1
data2
data3";

$array = explode(PHP_EOL,$theData);

foreach ($array as $key => $value) {
    echo ('<li>' . $value . '</li>');
}