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 "找到了";
请问这是什么原因呢?

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);
?>
改成这样,因为文本中有个换行符,用正则匹配一下就好了