
正文
php删除文件某行数据 php删除指定文件
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
php查找并删除txt文件一行
一共要有三份代码
test1.php 输入php删除文件某行数据的页面
html xmlns="" xml:lang="en" lang="en"
head
titleTest delete/title
meta http-equiv="Content-Type" content="text/html; charset=utf-8" /
/head
body
form name = 'fromTxt' action = 'test2.php' method ='post' class="smart-green"
spanDelete:/span/br/br
input type="text" name="ip_del" maxlength="50" style="height:20px;width:200px" onchange ="Value()"
input type = 'submit' name = 'submit' class="button" value="Delete" /
/form
/body
/html
test2.php 处理数据php删除文件某行数据的后台
?php
$DELETE = $_POST['ip_del']; /*之前输入php删除文件某行数据的值php删除文件某行数据的name*/
$data = file("ttt.txt");/*txt文件名*/
$out = array();
foreach($data as $line) {
if(trim($line) != $DELETE) {
$out[] = $line;
}
if(trim($line) == $DELETE){
echo "scriptalert('Existe')/script";
}
}
If ($data == $out){
echo "scriptalert('Not Existe')/script";
}
$fp = fopen("ttt.txt", "w+");
flock($fp, LOCK_EX);
foreach($out as $line) {
fwrite($fp, $line);
}
flock($fp, LOCK_UN);
fclose($fp);
echo "scriptlocation.href='test1.php';/script";/*返回主页面*/
?
ttt.txt 存储信息文本文档
相关问答
Q1: PHP 对文件内容进行部分删除
php删除文件某行数据我有一个这样php删除文件某行数据的代码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
下线直接调用函数删除即可!
Q2: 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);
echo ftell($f)-$len."br";
fseek($f, ftell($f)-$len);
fwrite($f, str_pad(' ', $len, ' '));
break;
}
fgets($f);
$j++;
}
fclose($f);
Q3: 用PHP如何删除指定的文件?
php中删除文件有一个系统函数:\x0d\x0aunlink ( string $filename );\x0d\x0a参数$filename 表示文件的路径,可以是相对路径也可以是绝对路径。\x0d\x0a列如,当前目录下有个文件:test.html\x0d\x0a可以执行 unlink ( 'test.html' );来删除\x0d\x0a另外删除目录用函数:rmdir();用法与unlink ()相同
Q4: PHP 如何从TXT文件中删除指定的一行?
是php删除文件某行数据的php删除文件某行数据,没有函数直接删除文件中的行,修改文件(删除、增加)标准的办法都是新建立文件,逐行进行拷贝,在拷贝中遇到需要修改的就进行修改,那么满足你的功能的标准代码是:
删除第二行:
$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');
Q5: php 如何删除文件的特定内容
php中删除文件有一个系统函数php删除文件某行数据:
unlink ( string $filename );
参数$filename 表示文件php删除文件某行数据的路径,可以是相对路径也可以是绝对路径。
列如,当前目录下有个文件php删除文件某行数据:test.html
可以执行 unlink ( 'test.html' );来删除
另外删除目录用函数php删除文件某行数据:rmdir();用法与unlink ()相同
php删除文件某行数据的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php删除指定文件、php删除文件某行数据的信息别忘了在本站进行查找喔。





