首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用PHP从文件末尾删除行

使用PHP从文件末尾删除行,可以通过以下步骤实现:

  1. 打开文件:使用 fopen() 函数打开文件,将文件指针指向文件末尾。
  2. 定位到行首:使用 fseek() 函数将文件指针定位到行首。
  3. 读取行:使用 fgets() 函数读取行。
  4. 判断行:使用 strlen() 函数判断行是否为空行。
  5. 删除行:使用 ftruncate() 函数删除行。

以下是示例代码:

代码语言:php
复制
<?php
// 打开文件
$file = "example.txt";
$handle = fopen($file, "r+");

// 定位到文件末尾
fseek($handle, -1, SEEK_END);
$char = fgetc($handle);

// 判断文件末尾是否为空行
while ($char === "\n" || $char === "\r") {
    fseek($handle, -2, SEEK_END);
    $char = fgetc($handle);
}

// 读取行
$line = "";
while ($char !== false && $char !== "\n" && $char !== "\r") {
    $line .= $char;
    fseek($handle, -2, SEEK_CUR);
    $char = fgetc($handle);
}

// 删除行
fseek($handle, -1, SEEK_CUR);
ftruncate($handle, ftell($handle));

// 关闭文件
fclose($handle);
?>

注意:此代码仅适用于删除文件末尾的一行,如果需要删除多行,需要在循环中使用 fgets() 函数读取行并判断是否为空行。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

python删除_python 删除文件中指定

原博文 2017-03-20 19:18 − 代码适用情况:xml文件,循环出现某几行,根据这几行中的某个字段删掉这几行这段代码的作用删除jenkins中config.xml中在自动生成pipline报错的时的回滚...首先当用户键入代码交给Python处理的时候会先进行词法分析,例如用户键入关键字或者当输入关键字有误时… 0 110 2019-09-28 16:12 − 多行语句 Python语句中一般以新作为语句的结束符...但是我们可以使用斜杠( \)将一的语句分为多行显示,如下所示: total = item_one + \ item_two + \ item_three 语句中包含 [], {} 或 () 括号就不需要使用多行连接符...本文主要分享在使用unittest的过程中,做的一些扩展尝试。先上一个例子。...print(1) a = 2 l = [3] 这个就不附结果了,都能猜得到,这种按顺序执行,还有像等号双等号这种,都是右边开始执行,执行等号右边,赋值给等号左边。

3.8K10
  • python删除文件指定

    我们现在有五数据,我们想删除第三:pig 删除文本指定删除文本指定用的是for i in i,找到指定的关键字,将不包括关键字的其他放在生成器中,将生成器包含的内容重新写入文件。...我们这里不用readlines是因为for i in f是使用读取一,不会消耗太多的内存。...如果使用readlines就会一次性将所有的内容全部读取出来放在内存当中,会占用较多的内存,且不方便我们对单行进行操作。...os.rename('test.txt', 'test.bak') os.rename('test_new.txt', 'test.txt') os.remove('test.bak') 发现成功把第三:...pig删除了,我们先找到指定的关键字,然后将其他内容放入生成器中,把生成器中的内容重新写入新的文件,把旧的文件删除,把新的文件改为之前的名字,就相当于删除指定行了。

    4.6K20

    python删除_Python删除文件第一

    fileinput.input(“file.txt”, inplace = 1): if not fileinput.isfirstline(): print(fileinput.replace(“\n”, “”)) 二、使用的库...:fileinput fileinput模块提供处理一个或多个文本文件的功能,可以通过使用for循环来读取一个或多个文本文件的所有。...三、fileinput常用函数 1 fileinput.input() #返回能够用于for循环遍历的对象 2 fileinput.filename() #返回当前文件的名称 3 fileinput.lineno...() #返回当前已经读取的的数量(或者序号) 4 fileinput.filelineno() #返回当前读取的的行号 5 fileinput.isfirstline() #检查当前行是否是文件的第一...6 fileinput.isstdin() #判断最后一是否stdin中读取 7 fileinput.close() #关闭队列 发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn

    3.8K40

    php删除文件unlink

    你甚至不知道如何读取和写入数据从一个文件! 现在是时候了解如何摧毁(删除文件。在php删除文件通过调用中断功能。...php的-文件unlink 当您查看的内容目录,您可以看到所有的档案,存在于该目录,因为作业系统或应用程序,您使用的是显示一个列表文件名。你可以把这些文件名作为链接,加入档案的目录您正在浏览。...如果您断开的文件,你是有效的制度造成忘记它或删除它! 在您可以删除(断开)的文件,你首先必须确保它无法打开您的程序。使用fclose函数关闭一个开放的档案。...php的-文件unlink 请记住php文件创建的教训,我们创建了一个文件,名为testFile.txt 。...$myFile = "testFile.txt"; unlink($myFile); 删除文件.注明,删除文件夹在php里面只有文件夹为空时才能用unlink 进行删除操作.

    1.8K20

    使用git删除文件

    删除单个文件 如果只是删除本地的一个文件,通常是物理删除,然后git删除,再提交即可。...rm test.txt git status git rm test.txt git commit -m "remove test.txt" git push 还原那些误删的文件 另一种情况是删错了...,因为版本库里还有呢,所以可以很轻松地把误删的文件恢复到最新版本: $ git checkout -- test.txt git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除...批量删除多个文件 在项目根目录使用命令git add -A然后使用命令git commit -m "del" 再然后要使用 git push推送到远程服务器 建议每一次add之后再次使用git status...命令来查看是否已经stage了 如果你要上传删除(全部上传) git add --all

    1.4K20

    AI办公自动化:用kimi批量删除文件末尾的空格

    工作任务:文件末尾有一个空格,要批量删除掉,然后重命名 在Kimi中输入提示词: 你是一个Python编程专家,要完成一个脚本编写的任务,具体步骤如下: 读取"F:\aivideo"文件夹里面的全部html...文件; 去掉html文件的主文件末尾的空格;重命名;;比如:成为提问工程师 .html,重命名为:成为提问工程师.html 运行没有成功,让Kimi自己找错误之处: 还是没有去掉,一步步仔细思考,可能错在哪里...kimi修正的代码: import os # 设置文件夹路径 folder_path = r"F:\aivideo" # 遍历文件夹中的所有文件 for filename in os.listdir(folder_path...): # 检查文件扩展名是否为html if filename.lower().endswith(".html"): # 去除文件末尾的空格(包括文件名和扩展名) file_name_without_spaces..., filename) # 构建新的文件名 new_file_name = file_name_without_spaces # 构建新的文件路径 new_file_path = os.path.join

    8010

    问与答66: 如何不打开Excel文件删除

    Q:我有大约1000多个Excel文件(扩展名为xlsx),这些文件都只有1个工作表且具有相同的工作表结构,我想在不打开这些Excel文件的前提下删除其工作表的第1至3,如何快速实现?...A:可以使用下面的VBA代码: Sub DeleteRows() '声明变量 Dim FilePath As String Dim fFile As String Dim...ActiveWorkbook.Save ActiveWorkbook.Close End If fFile = Dir Loop End Sub 在代码中,使用...只要不是代码所在的Excel工作簿文件,将打开该工作簿,执行删除第1至3的操作,然后保存结果并关闭该工作簿。 注意,代码默认所要操作的工作簿与代码所在的工作簿在同一文件夹中。...虽然要求不打开Excel来删除,但使用代码打开工作簿,执行操作,保存操作结果,然后关闭工作簿,让用户觉得根本没有打开过工作簿,这也是常用的技巧。 代码的图片版如下:?

    1.4K10

    php遍历目录&删除指定文件中指定内容

    php遍历目录&删除指定文件中指定内容     现在正坐在安静的寝室里,寒假俨然已经离我而去了……今天发的是我寒假里搞的最后一次学习,之后的时间就一直在看海贼王了。    ...以前写过一个C语言的遍历目录+复制文件的程序,很长很复杂,现在用PHP一样可以实现遍历目录,而代码就短了不少。这个程序目的是遍历目录,找到所有指定文件名的文件,并删除其中指定的字符串。 <?...php //功能:删除指定目录(包括子目录)下所有指定文件中指定字符串 $tmpfiledir = $_SERVER["DOCUMENT_ROOT"].'...你们可以看到我写了两个函数,函数traverse将查找到的指定文件路径写在一个临时文件里,函数del删除这些文件里的指定字符串。...其实我一开始是用C语言写好的遍历,因为C语言不好对文件操作所以才用php删除的部分,所以一开始只写了一个del函数,后来干脆把遍历文件也用php写了(似乎比C简单的多),所以又写了一个函数traverse

    2.4K21

    如何使用 TmpwatchTmpreaper 删除文件

    使用 Bash 脚本在 Linux 中删除早于 “X” 天的文件/文件夹 今天,我们将向你展示如何在 Linux 上使用 Tmpwatch 程序来实现这一目标。...d – 天 h – 小时 m – 分钟 s – 秒 如何使用 tmpwatch 命令删除一段时间未访问的文件 正如我在本文开头所说,tmpwatch 默认根据文件访问时间(atime)来删除文件。...# tmpwatch 5 /tmp 运行以下命令删除最近 10 个小时未修改的文件。如果要使用修改时间(mtime)来删除文件,那么需要在 tmpwatch 命令中添加 -m 选项。...# tmpwatch -m 10 /home/daygeek/Downloads 如何使用 tmpwatch 命令删除超过 “X” 天未访问的文件 如果要使用天数删除文件,那么需要添加后缀 d。...# tmpwatch 30d /home/daygeek/Downloads 如何使用 tmpwatch 命令删除一段时间内未访问的所有文件 以下命令将基于修改时间(mtime)删除所有类型的文件,而不仅仅是常规文件

    3.8K10
    领券