配色: 字号:
php 批量替换程序的具体实现代码
2016-09-05 | 阅:  转:  |  分享 
  
起始根路径:点表示当前目录,末尾不要加/包含此目录下所有目录文件扩展名:多个请用|隔开内容替换选项:使用正则表达式替换内容类默认使用字符串替换,也可以使用正则表达式(需勾选)。"替换为"不填写的话,就表示删除"替换内容"。替换内容:替换为:
php批量替换程序的具体实现代码

这篇文章介绍了php批量替换程序的具体实现代码,有需要的朋友可以参考一下

代码如下:

复制代码代码如下:


/Thisprogramisfreesoftware;youcanredistributeitand/ormodifyitunderthetermsoftheGNULesserGeneralPublicLicenseaspublishedbytheFreeSoftwareFoundation;eitherversion2oftheLicense,or(atyouroption)anylaterversion./

set_time_limit(3600);

if($_POST[''Submit'']==''开始执行操作''){$dir=$_POST[''searchpath''];$shortname=$_POST[''shortname''];$isall=$_POST[''isall''];$isreg=$_POST[''isreg''];

if(!get_magic_quotes_gpc()){$sstr=$_POST[''sstr''];$rpstr=$_POST[''rpstr''];}else{$sstr=stripslashes($_POST[''sstr'']);$rpstr=stripslashes($_POST[''rpstr'']);}

//分析shortname$arrext=explode("|",$shortname);

if(!is_dir($dir))return;if($sstr=='''')return;

//把末尾的/去掉if(substr($dir,-1)==''/'')$dir=substr($dir,0,strrpos($dir,"/"));

//罗列所有目录if($isall==1){hx_dirtree($dir);}else{hx_dealdir($dir);

}

exit();}

functionhx_dirtree($path="."){global$sstr,$rpstr,$isreg,$arrext;

$d=dir($path);while(false!==($v=$d->read())){if($v=="."||$v=="..")continue;$file=$d->path."/".$v;if(is_dir($file)){echo"

$v

";hx_dirtree($file);}else{$ext=substr(strrchr($v,"."),1);if(in_array($ext,$arrext)){echo"
  • $file";$body=file_get_contents($file);if($isreg==1){$body2=preg_replace($sstr,$rpstr,$body);}else{$body2=str_replace($sstr,$rpstr,$body);}if($body!=$body2&&$body2!=''''){tofile($file,$body2);echo''OK'';}else{echo''NO'';}echo''
  • '';}}}$d->close();}

    functionhx_dealdir($dir){global$sstr,$rpstr,$isreg,$arrext;if($dh=opendir($dir)){while(false!==($file=readdir($dh))){if(filetype($dir.''/''.$file)==''file''){

    $ext=substr(strrchr($file,"."),1);if(in_array($ext,$arrext)){

    echo"
  • $file";$body=file_get_contents($dir.''/''.$file);if($isreg==1){$body2=preg_replace($sstr,$rpstr,$body);}else{$body2=str_replace($sstr,$rpstr,$body);}if($body!=$body2&&$body2!=''''){tofile($dir.''/''.$file,$body2);echo''OK'';}else{echo''NO'';}echo''
  • '';}}}closedir($dh);}

    }//把生成文件的过程写出函数functiontofile($file_name,$file_content){if(is_file($file_name)){@unlink($file_name);}$handle=fopen($file_name,"w");if(!is_writable($file_name)){returnfalse;}if(!fwrite($handle,$file_content)){returnfalse;}fclose($handle);//关闭指针return$file_name;}?>批量替换程序|木马批量删除_www.sanming520.combody{background:#FFFFFF;color:#000;font-size:12px;}#top{text-align:center;}h1,p,form{margin:0;padding:0;}h1{font-size;14px;}

    批量替换程序(UTF-8版)

    本程序可以扫描指定目录的所有文件,进行内容替换。可用于被批量挂马的删除以及批量更新页面某些内容。
    在文件数量非常多的情况下,本操作比较占用服务器资源,请确脚本超时限制时间允许更改,否则可能无法完成操作。


    "name="form1"target="stafrm"method="post">
    document.all.mdv.style.pixelHeight=screen.height-450;






    献花(0)
    +1
    (本文系白狐一梦首藏)
    类似文章 更多
    发表评论: