php删除文本中一行数据 php删除语句-成都快上网建站

php删除文本中一行数据 php删除语句

PHP删除TXT文本内容

可以打开文件再关闭,例如:

专注于为中小企业提供成都做网站、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业秀峰免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了超过千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

$fclose($fopen('abc.txt','w'));

还可以直接写入空字符串,例如:

file_put_contents('abc.txt','');

用php怎样来数据txt文档中数据,且读取一条对应着里面就删除一条呢?不能把数据全部读取出来。

读取一条删一条可以做到,有这么几种方法

1、读取一行往临时文件里写一行,到达你需要的那一条记录时,把这条记录存入变量,然后读取原文件剩下的内容,写入临时文件,然后把临时文件改名成原文件。

2、移动文件指针到你要的那条记录,读取一条记录,然后读取这条记录后面的内容,把指针移动到你要的那条记录的开始,把之前读出的记录后面的内容写入,然后把文件截断成原文件大小减去所读取记录的长度。

3、移动文件指针到你要的那条记录,读取,然后把这条记录填充成空白,然后,要记着下次再读取时跳过空白内容。

4、移动文件指针到你要的记录,读取,然后在另一个文件内保存记录的位置或序号,下次再读取该文件时要先读取保存记录位置或序号的文件内容,然后根据其中内容跳过原文件中相应的记录,这也相当于删除了相应记录。

PHP 如何从TXT文件中删除指定的一行?

是的,没有函数直接删除文件中的行,修改文件(删除、增加)标准的办法都是新建立文件,逐行进行拷贝,在拷贝中遇到需要修改的就进行修改,那么满足你的功能的标准代码是:

删除第二行:

$f1=fopen('fff.txt','r');

$tmp=tempnam();//建立临时文件

$f2=fopen($tmp,'w');

$line_no=1;//行号

while(!feof($f1)){

$line=fgets($f1);

if ($line_no!=2) fputs($f2,$line);

$line_no++;

}

fclose($f1);

fclose($f2);

rename($tmp,'fff.txt');

删除内容为“user2”的行:

$f1=fopen('fff.txt','r');

$tmp=tempnam();//建立临时文件

$f2=fopen($tmp,'w');

while(!feof($f1)){

$line=fgets($f1);

if ($line!='user2') fputs($f2,$line);

}

fclose($f1);

fclose($f2);

rename($tmp,'fff.txt');

补充:这点举一反三都做不到呀,如果是我的学生我不会来做这个补充的~

$f1=fopen('fff.txt','r');

$tmp=tempnam();//建立临时文件

$f2=fopen($tmp,'w');

while(!feof($f1)){

$line=fgets($f1);

list($u,$p)=explode(':',$line);

if ($u!='user2') fputs($f2,$line);

}

fclose($f1);

fclose($f2);

rename($tmp,'fff.txt');

PHP 对文件内容进行部分删除

我有一个这样的代码,是我自己以前博客的代码。自己写的,不懂可以问我。

//删除文件,原理是选择性复制

function Delete_text($files,$isline){

$f1 = Read_it($files);

$temp = tempnam("/","TEMP");

$f2 = fopen($temp,'w+');

//if($ff1 != $isline){

foreach($f1 as $f11){

$f111 = $f11."\n";

$file_in = explode('|locksepace|',$f11);

if($file_in[0] != $isline){

fputs($f2,$f111);

}

}

//}

fclose($f1);

fclose($f2);

rename($temp,$files); 

}

上边是这个函数,用起来很简单

例如

?

Delete_text(“online.text”,$isline) //$isline其实为了操作方便,设置的编号

?

online.txt的格式需要注意,因为读取时是由数组的方式读取,并用|locksepace|分割的,所以格式如下

1|locksepace|用户1|locksepace|2014年4月5日 16:18:28

2|locksepace|用户2|locksepace|2014年4月4日 16:18:37

下线直接调用函数删除即可!

请教php大神,php如何删除txt第一行的内容

亲,你好,没有必要把第一行删除了再读取第二行啊!

你可以直接写一个循环,然后直接逐行读取txt内容就可以了啊!

PHP有读取文本行的函数fgets($handle);

希望可以帮到你哦!~如果有疑问可以私信我或者继续追问哦!~~


网站题目:php删除文本中一行数据 php删除语句
网站链接:http://kswjz.com/article/hhosgs.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流