牛骨文教育服务平台(让学习变的简单)
博文笔记

php删除txt文件最后一行

创建时间:2017-08-14 投稿人: 浏览次数:627
/**
 * 删除文件最后一行
 * @param $file_path 文件路径
 */
public function delLastLine($file_path){
    $file = $fp = fopen($file_path, "r") or die("Unable to open file!");
    while(!feof($file)){
        $fp = fgets($file);
        if($fp){
            $content[] = $fp;
        }
    }
    array_pop($content);
    fclose($file);

    //重新写入文件
    $file = fopen($file_path, "w+");
    fwrite($file, implode("", $content));
    fclose($file);
}

我的文件读取出来之后数组的最后一行保存的是false,所以if($fp)才往数组里写。
如果文件中有空行,请把这个判断去掉,在对数组进行两次删末尾行的操作。
如果太大到超出内存的文件,这个方法不适用。
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。