导航:首页 > 编程语言 > php按行读文件

php按行读文件

发布时间:2023-09-19 12:33:14

php逐行读取文件,逐行修改文件,删除指定行

修改和删除指定行,我们一般用file将文件内容读取到数组中,根据数字索引比较容易修改,但是你要求用文件指针,这个比较麻烦,不管你用的是filesystem的函数还是spl类函数,都不可避免一个问题,对一个文件流操作,最多替换流中间的某一段内容,不可能实现插入,又不是c语言的链表,

//修改第二行内容
$f=fopen('test.txt','r+');
$i=1;
while(!feof($f)){
if($i==2){
fseek($f,0,SEEK_CUR);
fwrite($f,'aad');//这里的修改是替换形式,如果修改后这一行的长度比原来短,那么可以用空格填充到原来长度,这样实现修改,而且不影响后面的内容,但是修改后的比原来长就麻烦了,
break;
}
fgets($f);
$i++;
}
fclose($f);
//删除行同修改行一样,只不过是将原来行替换为同等长度的空格串
$f=fopen('test.txt','r+');
$j=1;
while(!feof($f)){
if($j==2){
$row=fgets($f);
$len=strlen($row);
echoftell($f)-$len."<br>";
fseek($f,ftell($f)-$len);
fwrite($f,str_pad('',$len,''));
break;
}
fgets($f);
$j++;
}
fclose($f);

㈡ PHP里如何读取文件的指定一行

<?php
$c=getLine('./a.txt',10);//读取a.txt文件第10行内容
echo$c;
/**
*获取指定行内容
*
*@param$file文件路径
*@param$line行数
*@param$length指定行返回内容长度
*/
functiongetLine($file,$line,$length=4096){
$returnTxt=null;//初始化返回
$i=1;//行数

$handle=@fopen($file,"r");
if($handle){
while(!feof($handle)){
$buffer=fgets($handle,$length);
if($line==$i)$returnTxt=$buffer;
$i++;
}
fclose($handle);
}
return$returnTxt;
}

㈢ php读取txt文件指定行的内容并显示

<?php
$handle = @fopen("1.txt", "r");
$str="";
if ($handle) {
for($i=0;$i++;$i<3){
$buffer = fgets($handle, 4096);
if(strpos($buffer,"aaaa")!==false){
$str.= $buffer;

}elseif(strpos($buffer,"bbbb")!==false){
$str.= "[".$buffer."]";

}elseif(strpos($buffer,"cccc")!==false){
$str.= "(".$buffer.")";

}
}
fclose($handle);
}
echo $str;

?>

㈣ php怎么一行一行的读取字符串

php fgets将txt文件内容一行一行的读出

  1. 说明
    string fgets ( int $handle [, int $length ] )
    从 handle 指向的文件中读取一行并返回长度最多为 length - 1 字节的字符串。碰到换行符(包括在返回值中)、EOF 或者已经读取了 length - 1 字节后停止(看先碰到那一种情况)。如果没有指定 length,则默认为 1K,或者说 1024 字节。
    出错时返回 FALSE。
    通常的缺陷:
    习惯了 C 语言中 fgets() 语法的人应该注意到 EOF 是怎样被返回的。
    文件指针必须是有效的,必须指向由 fopen() 或 fsockopen() 成功打开的文件(并还未由 fclose() 关闭)。

  2. 以下是一个简单例子:

<?php
$handle=@fopen("/tmp/inputfile.txt","r");
if($handle){
while(!feof($handle)){
$buffer=fgets($handle,4096);
echo$buffer;
}
fclose($handle);
}
?>


㈤ php逐行读取txt文件内容,并把内容放到输入框里,一行内容对应一个输入框

<?php
header("Content-type:text/html;charset=utf-8");
$f_open = fopen('aaa.txt','w+'); //打开文件
if(isset($_POST['submit'])){ //判断,如果点了提交按钮则执行以下代码
fwrite($f_open,$_POST['txt']); //写入文件,内容为文本域传过来的值
}
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
<style type="text/css">
textarea{
width: 300px;
height: 20px;
}
</style>
</head>
<body>
<form method="post" action="a.php">
<textarea name="txt">
<?php
$aaa = readfile('aaa.txt'); //读取aaa.txt的内容
?>
</textarea>
<input type="submit" name="submit">
</form>
</body>
</html>
<?php
fclose($f_open); //关闭文件
?>

阅读全文

与php按行读文件相关的资料

热点内容
打开微信收付款加密 浏览:400
小度app怎么关闭看护助手 浏览:739
服务器方舟boss属性怎么调 浏览:345
acos系统终端命令 浏览:915
宁德云服务器最新行情 浏览:475
压缩性骨折五十天 浏览:656
如何在服务器里把方块替换 浏览:909
变频空调摘板用什么替代压缩机 浏览:46
怎么在苹果手机上玩安卓和平精英 浏览:237
python异步调用框架 浏览:963
安卓手机如何拍live图 浏览:823
供应链管理系统源码 浏览:944
方舟编译器会适配哪些型号 浏览:470
主流云服务器哪个牌子好 浏览:267
导航怎么看服务器在那 浏览:932
广石化单片机 浏览:281
和教育连接服务器失败是什么原因 浏览:1003
建行app怎么存定期 浏览:830
mc服务器地址183 浏览:73
为什么会解压软件解压失败 浏览:110