PHP 删除文本文件的任意一行或添加一行

删除现实存在的文本文件的指定行,这一行可以是任意的,即由用户决定。删除文本文件的任意一行非常有意义,比如,我们用一个文本文件记录注册用户的相关资讯(每一行一条资讯),现在我们需要删除其中的某一条。

 <? php
 $filename = " aaa.txt " ; // 定义操作文件
 $delline = 3 ; // 要删除的行数
 $farray = file ( $filename ); // 读取文件数据到数组中
 for ( $i = 0 ; $i < count ( $farray ); $i ++ )
{   
    if ( strcmp ( $i + 1 , $delline ) == 0 )  // 判断删除的行,strcmp是比较两个数大小的函数
     {   
        continue ;
    }   
    if ( trim ( $farray [ $i ]) <> "" )  // 删除文件中的所有空行
     {   
        $newfp .= $farray [ $i ];    // 重新整理后的数据
     }   
}   
 $fp = @ fopen ( $filename , " w " ); // 以写的方式打开文件
 @ fputs ( $fp , $newfp );
@ fclose ( $fp );
 ?>

文本文件aaa.txt如下:

10.8.0.1:255.255.255.0
10.8.0.2:255.255.255.0
10.8.0.3:255.255.255.0
10.8.0.4:255.255.255.0
10.8.0.5:255.255.255.0
10.8.0.6:255.255.255.0
10.8.0.8:255.255.255.0

添加一行数据到最后一行

 <? php
 $filename = " aaa.txt " ; // 定义操作文件
 $fcontent  =  file ( $filename ); // file()把整个文件读入一个数组中
 $fp   =  fopen ( " $filename " , " a " );
 $str  =  " 10.8.0.9:255.255.255.0\n " ;
 fwrite ( $fp ,  $str );
 ?>
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。