php教程

PHP操作TXT写入读取清空方法

我的站长站 2021-09-21 人阅读

PHP写入TXT

<?php
$hua = "这是我要写入的一段话";
$filename = 'name.txt';
$handle =fopen($filename,'a'); 
fwrite($handle,$hua); 
fclose($handele);
?>

PHP读取TXT内容

-----第一种方法-----fopen+fread--------

<?php
$file_path = "test.txt";
if(file_exists($file_path)){
$fp = fopen($file_path,"r");
$str = fread($fp,filesize($file_path));//指定读取大小,这里把整个文件内容读取出来
fclose($fp);
echo $str = str_replace("rn","<br />",$str);
}
?>

--------第二种方法------file_get_contents------

<?php
$file_path = "test.txt";
if(file_exists($file_path)){
$str = file_get_contents($file_path);//将整个文件内容读入到一个字符串中
$str = str_replace("rn","<br />",$str);
echo $str;
}
?>

-----第三种方法-------fopen+fread循环-----

<?php
$file_path = "test.txt";
if(file_exists($file_path)){
$fp = fopen($file_path,"r");
$str = "";
$buffer = 1024;//每次读取 1024 字节
while(!feof($fp)){//循环读取,直至读取完整个文件
$str .= fread($fp,$buffer);
} 
$str = str_replace("rn","<br />",$str);
fclose($fp);
echo $str;
}
?>

-------第四种方法-------file读取-------

<?php
$file_path = "test.txt";
if(file_exists($file_path)){
$file_arr = file($file_path);
for($i=0;$i<count($file_arr);$i++){//逐行读取文件内容
echo $file_arr[$i]."<br />";
}
/*
foreach($file_arr as $value){
echo $value."<br />";
}*/
}
?>

----第五种方法---------fopen+fget-----------

<?php
$file_path = "test.txt";
if(file_exists($file_path)){
$fp = fopen($file_path,"r");
$str ="";
while(!feof($fp)){
$str .= fgets($fp);//逐行读取。如果fgets不写length参数,默认是读取1k。
}
$str = str_replace("rn","<br />",$str);
fclose($fp);
echo $str;
}
?>

PHP清空TXT

方法一:file_put_contents

<?php
$filename = 'name.txt';
file_put_contents($filename, "");
?>

方法二:fopen

<?php
$handle =fopen($filename,'w+');fclose($handele);
?>

附录:fopen的几个主要参数

"w"    写入方式打开,将文件指针指向文件头并将文件大小清为零。如果文件不存在则尝试创建之。    
"w+"   读写方式打开,将文件指针指向文件头并将文件大小清为零。如果文件不存在则尝试创建之,文件存在则新建一个文件覆盖,从头开始写入。    
"a"    附加方式,以只写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之,文件存在则在末尾继续写入。    
"a+"   附加方式,以读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之,文件存在则在末尾继续写入。

"r"   打开只读文件,该文件必须存在,文件指针指向文件头,从头开始读取。
"r+"  打开可读写的文件,该文件必须存在,文件指针指向文件头,从头开始读写。

上述的形态字符串都可以再加一个b字符,如rb、w+b或ab+等组合,加入b 字符用来告诉函数库打开的文件为二进制文件,而非纯文字文件。不过在POSIX系统,包含Linux都会忽略该字符。

最新更新