php中读取txt文件的问题
来源:百度知道 编辑:UC知道 时间:2024/06/07 20:59:56
<?PHP
$file_name="a.txt";
$fp=fopen($file_name,'r');
while(!feof($fp))
{
$buffer=fgets($fp,4096);
if ($buffer=="abc")
{echo "找到了";}
echo $buffer."<br>";
}
fclose($fp);
?>
问题在于:我在a.txt中加入了一行abc,但是程序却不能执行到echo "找到了";
请问这是什么原因呢?
$file_name="a.txt";
$fp=fopen($file_name,'r');
while(!feof($fp))
{
$buffer=fgets($fp,4096);
if ($buffer=="abc")
{echo "找到了";}
echo $buffer."<br>";
}
fclose($fp);
?>
问题在于:我在a.txt中加入了一行abc,但是程序却不能执行到echo "找到了";
请问这是什么原因呢?
php读取文件的方法有很多,常用的有:
file
fopen
file_get_contents
只是各个函数返回的结果不同
file返回的是数组
file_get_contents返回的是字符串
fopen直接返回的是一个文件资源
具体使用哪种可以根据实际情况而定
最好附上demo
print_r(file("test.txt"));
echo file_get_contents("test.txt");
$f = fopen("test.txt");
fread($f, filesize("test.txt"));
fclose($f);
<?PHP
$file_name="a.txt";
$fp=fopen($file_name,'r');
while(!feof($fp))
{
$buffer=fgets($fp);
if (preg_match("/^abc\s$/",$buffer))
{echo "找到了";}
echo $buffer."<br>";
}
fclose($fp);
?>
改成这样,因为文本中有个换行符,用正则匹配一下就好了