域名验证网站,商标国际分类1到45,营销型网站建设 合肥,wordpress加载单页面php遍历文件删除指定字符的实现方法#xff1a;首先创建一个PHP示例文件#xff1b;然后通过“function del($getstr){…}”方法删除指定目录下所有指定文件中指定字符串即可。本文操作环境#xff1a;windows7系统、PHP7.1版#xff0c;DELL G3电脑php实现遍历目录并删除指…php遍历文件删除指定字符的实现方法首先创建一个PHP示例文件然后通过“function del($getstr){…}”方法删除指定目录下所有指定文件中指定字符串即可。本文操作环境windows7系统、PHP7.1版DELL G3电脑php实现遍历目录并删除指定文件中指定内容这篇文章主要介绍了php实现遍历目录并删除指定文件中指定内容,本文实现的工具可以用来删除服务器上的一句话木马,需要的朋友可以参考下现在正坐在安静的寝室里寒假俨然已经离我而去了……今天发的是我寒假里搞的最后一次学习之后的时间就一直在看海贼王了。以前写过一个C语言的遍历目录复制文件的程序很长很复杂现在用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()返回一个目录句柄,失败返回falseif($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]); echo 成功;unlink($tmpfiledir);}else{echo 输入相关信息;}?输入目标文件夹:输入目标文件名:输入需要删除的字符串:你们可以看到我写了两个函数函数traverse将查找到的指定文件路径写在一个临时文件里函数del删除这些文件里的指定字符串。其实我也觉得很鸡肋直接在遍历的时候删除就可以了根本不用生成什么临时文件。其实我一开始是用C语言写好的遍历因为C语言不好对文件操作所以才用php写删除的部分所以一开始只写了一个del函数后来干脆把遍历文件也用php写了(似乎比C简单的多)所以又写了一个函数traverse。大家只管看遍历的部分就成也可以和我之前用C写的遍历的代码对比(我发了源代码的)看看有什么不同。不过这个版本不支持通配符所以文件名必须要指定。作用嘛(也是我写这个的理由)可以批量删除我们挂在服务器上的一句话木马。【推荐学习《PHP视频教程》】