代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>php删除txt文档中的指定行</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </head> <body> <?php /* * 删除txt文档中的指定行 * site www.jb200.com */ function del_str_line($file,$line){ $str=''; $handle = @fopen("1.txt", "rb+");//以读写方式打开, //建议 fopen() 打开文件时使用 'b' 标记。 if ($handle) { for($i=0;$i<$line;$i++){ $str=fgets($handle);//读取指定的行 } //关闭文件,因为当前的文件指针已经指向了下一行 //不关闭的话,直接执行下面的重写代码,PHP会在$line+1删除指定个数的字符 rewind($handle);//重置文件指针到开头 $len=strlen($str);//计算指定行的长度 for($i=0;$i<$line-1;$i++){ fgets($handle);//将文件指针定位到指定行的上一行 } for($n=1;$n<=$len-1;$n++){//循环重写文件,这时候文件指针移动到指定行 fwrite($handle,' ',1);//将指定行每个位置的字符用空格代替,实现删除 } } } del_str_line('1.txt',3); ?> </body> </html>
代码就是上面这样了,测试用的txt文档大家自行准备吧。
以上的方法,不是最好的,只是用了php文件的读写实现内容的删除,供大家学习参考。