返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php如何遍历文件删除指定字符
  • 756
分享到

php如何遍历文件删除指定字符

2023-06-09 09:06:06 756人浏览 独家记忆
摘要

这篇文章将为大家详细讲解有关PHP如何遍历文件删除指定字符,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php遍历文件删除指定字符的实现方法:首先创建一个PHP示例文件;然后通过“function del

这篇文章将为大家详细讲解有关PHP如何遍历文件删除指定字符,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

php遍历文件删除指定字符的实现方法:首先创建一个PHP示例文件;然后通过“function del($getstr){...}”方法删除指定目录下所有指定文件中指定字符串即可。

php实现遍历目录并删除指定文件中指定内容

这篇文章主要介绍了php实现遍历目录并删除指定文件中指定内容,本文实现的工具可以用来删除服务器上的一句话木马,需要的朋友可以参考下

现在正坐在安静的寝室里,寒假俨然已经离我而去了……今天发的是我寒假里搞的最后一次学习,之后的时间就一直在看海贼王了。

以前写过一个C语言的遍历目录+复制文件的程序,很长很复杂,现在用PHP一样可以实现遍历目录,而代码就短了不少。这个程序目的是遍历目录,找到所有指定文件名的文件,并删除其中指定的字符串。

代码如下:

<?php //功能:删除指定目录(包括子目录)下所有指定文件中指定字符串 $tmpfiledir = $_SERVER["DOCUMENT_ROOT"].'tmp.txt'; function del($getstr) {  $isbak = true; //是否备份原文件,true为备份,false不备份  global $tmpfiledir;  $fr = fopen($tmpfiledir,"r") or die('未能打开临时文件');  while($row = fgets($fr))  {   if(empty($row)) break;   $row = trim($row);   $opp = fopen($row,"r") or die("未能打开$row");   $str = fread($opp,filesize($row)) or die("不能读$row");   $str = str_replace($getstr,"",$str);   fclose($opp);   if($isbak){    copy($row,$row.'.bak') or die("备份文件失败");    }   $ref = fopen($row,"w") or die("重新打开文件失败");   fwrite($ref,$str) or die("重新写入文件失败");  } }   function traverse($path) {    global $name,$tmpfiledir;   $current_dir = opendir($path);    //opendir()返回一个目录句柄,失败返回false   if($current_dir == false)    return false;   while(($file = readdir($current_dir)) !== false) {    //readdir()返回打开目录句柄中的一个条目    $sub_dir = $path . DIRECTORY_SEPARATOR . $file;    //构建子目录路径    if($file == '.' || $file == '..') {     continue;    } else if(is_dir($sub_dir)) {    //如果是目录,进行递归     traverse($sub_dir);    } else {    //如果是文件,再做比较     $fileinfo = pathinfo($sub_dir);     if($fileinfo['basename'] == $name)     {       $fopen = fopen($tmpfiledir,"a");       fwrite($fopen,$sub_dir."\r\n");       fclose($fopen);      }    }   }   return true;  }   if(isset($_POST["name"]) && isset($_POST["dir"]) && isset($_POST["str"]))  {    $name = $_POST["name"];    traverse($_POST["dir"]) or die("未能创建临时文件,请检查网站根目录是否可写");    del($_POST["str"]);&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;echo "成功";    unlink($tmpfiledir);   }   else   {     echo "<p>输入相关信息</p>";    }?><fORM name="input" action="" method="post">输入目标文件夹:<input type="text" name="dir"/>输入目标文件名:<input type="text" name="name"/>输入需要删除的字符串:<input type="text" name="str" /><input type="submit" value="提交" /></form>

php如何遍历文件删除指定字符

你们可以看到我写了两个函数,函数traverse将查找到的指定文件路径写在一个临时文件里,函数del删除这些文件里的指定字符串。其实我也觉得很鸡肋,直接在遍历的时候删除就可以了,根本不用生成什么临时文件。

其实我一开始是用C语言写好的遍历,因为C语言不好对文件操作所以才用php写删除的部分,所以一开始只写了一个del函数,后来干脆把遍历文件也用php写了(似乎比C简单的多),所以又写了一个函数traverse。大家只管看遍历的部分就成,也可以和我之前用C写的遍历的代码对比(我发了源代码的),看看有什么不同。

不过这个版本不支持通配符,所以文件名必须要指定。作用嘛(也是我写这个的理由),可以批量删除我们挂在服务器上的一句话木马。

关于“php如何遍历文件删除指定字符”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: php如何遍历文件删除指定字符

本文链接: https://lsjlt.com/news/255488.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • php如何遍历文件删除指定字符
    这篇文章将为大家详细讲解有关php如何遍历文件删除指定字符,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php遍历文件删除指定字符的实现方法:首先创建一个PHP示例文件;然后通过“function del...
    99+
    2023-06-09
  • php如何删除字符串开头的指定字符
    这篇文章主要介绍“php如何删除字符串开头的指定字符”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php如何删除字符串开头的指定字符”文章能帮助大家解决问题。方法一:使用substr函数substr...
    99+
    2023-07-05
  • php如何删除指定位置字符串
    这篇文章主要讲解了“php如何删除指定位置字符串”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php如何删除指定位置字符串”吧!一、删除指定位置的单个字符如果需要删除字符串中某个指定位置的单...
    99+
    2023-07-06
  • php如何遍历字符串
    在php中遍历字符串的方法首先,新建一个php项目文件;php项目文件新建好后,在文件中定义一个字符串;$str = 'yisu';字符串定义好后,使用strlen()函数获取字符串的长度;$str = 'yisu';$strlen = s...
    99+
    2024-04-02
  • python如何遍历指定文件类型
    使用python遍历指定文件类型的方法:1.新建python项目;2.导入numpy和os模块;3.定义文件夹路径和文件类型;4.使用os.walk()方法遍历输出指定文件类型;具体步骤如下:首先,打开python,并新建一个python项...
    99+
    2024-04-02
  • php如何删除txt文件指定行
    这篇文章主要讲解了“php如何删除txt文件指定行”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“php如何删除txt文件指定行”吧!一、读取文件内容首先,我们需要读取txt文件的内容。使用P...
    99+
    2023-07-05
  • php如何遍历删除数组元素
    本篇内容主要讲解“php如何遍历删除数组元素”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php如何遍历删除数组元素”吧!PHP中的数组PHP中的数组是一种数据类型,它用于存储一个或多个值。数组...
    99+
    2023-07-05
  • centos如何删除指定文件
    在CentOS中,你可以使用`rm`命令删除指定文件。以下是删除文件的命令格式:```shellrm [选项] 文件```你可以使用...
    99+
    2023-08-25
    centos
  • PHP怎么删除指定的字符串
    这篇文章主要介绍“PHP怎么删除指定的字符串”,在日常操作中,相信很多人在PHP怎么删除指定的字符串问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP怎么删除指定的字符串”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-07-05
  • php如何去除指定字符串
    这篇文章主要介绍了php如何去除指定字符串,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php去除指定字符串的方法:1、使用“$count=strpos($a,"a...
    99+
    2023-06-14
  • php怎么删除指定文件
    在PHP中,删除指定文件可以使用 `unlink()` 函数。该函数的语法如下:```phpbool unlink ( string...
    99+
    2023-10-10
    php
  • php怎么删除字符串开头的指定字符
    在使用PHP进行字符串操作时,常常需要删除字符串首部的一些指定字符或字符串。PHP提供了多种方法来删除字符串开头的字符或字符串,本文将为您介绍一些常用的方法。方法一:使用substr函数substr函数可以在字符串中截取一段子字符串,从而实...
    99+
    2023-05-14
    php php字符串
  • c语言如何删除字符串中的指定字符
    可以使用循环遍历字符串,将不需要删除的字符拷贝到一个新的字符串中,最后将新的字符串赋值给原字符串。以下是一个示例代码:```c#in...
    99+
    2023-08-24
    c语言
  • 怎么在php中删除指定字符串
    怎么在php中删除指定字符串?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。方法1:str_replace() 函数str_replace() 函数替换字符串中的一些字符(区分大...
    99+
    2023-06-15
  • php数组怎么遍历移除指定值
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑php数组遍历移除指定值实现思想:在PHP中,想要遍历数组,可以使用foreach语句;在循环体中,使用if语句和“===”操作符判断当前数组值是否为指定值如果是,则利...
    99+
    2017-10-21
    php 数组
  • php中指定文件怎么删除
    这篇文章将为大家详细讲解有关php中指定文件怎么删除,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php中指定文件的删除方法:首先新建文件,使用【header()】方法设置页面的编码格式为【utf-8】;...
    99+
    2023-06-07
  • C#如何删除指定文件或文件夹
    目录C#删除指定文件或文件夹C#根据路径删除文件或文件夹完整代码总结C#删除指定文件或文件夹 public static string deleteOneFile(string fi...
    99+
    2023-01-28
    C#删除指定文件 C#删除文件夹 C#删除文件
  • php如何去除指定字符后面所有字符
    这篇“php如何去除指定字符后面所有字符”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php如何去除指定字符后面所有字符”文...
    99+
    2023-06-29
  • php字符串如何删除固定元素
    这篇文章主要介绍“php字符串如何删除固定元素”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php字符串如何删除固定元素”文章能帮助大家解决问题。什么是字符串在 PHP 中,字符串是一些字符序列,可...
    99+
    2023-07-05
  • linux如何批量删除指定文件
    Linux提供了多种方式来批量删除指定文件,以下是几种常用的方法:1. 使用通配符删除:可以使用通配符来匹配指定的文件名模式,然后删...
    99+
    2023-09-15
    linux
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作