php遍历替换目录下文件指定内容的方法
本文实例讲述了php遍历替换目录下文件指定内容的方法。分享给大家供大家参考,具体如下:
在php中目录访问需要遍历了然后文件需要一个个打开进行访问操作了,下面我们来看一段php替换目录下文件指定内容,具体如下:
/****************************
*获取目录下的所有文件
*[$dir]文件夹路径
****************************/
functiondeepScanDir($dir){
$fileArr=array();
$dirArr=array();
$dir=rtrim($dir,'//');
if(is_dir($dir)){
$dirHandle=opendir($dir);
while(false!==($fileName=readdir($dirHandle))){
$subFile=$dir.DIRECTORY_SEPARATOR.$fileName;
if(is_file($subFile)){
$fileArr[]=$subFile;
}
elseif(is_dir($subFile)&&str_replace('.','',$fileName)!=''){
$dirArr[]=$subFile;
$arr=$this->deepScanDir($subFile);
$dirArr=array_merge($dirArr,$arr['dir']);
$fileArr=array_merge($fileArr,$arr['file']);
}
}
closedir($dirHandle);
}
returnarray(
'dir'=>$dirArr,
'file'=>$fileArr
);
}
/*
*替换成APP中可用的路径,在web文件夹中
*/
publicfunctionok_web(){
//查找字符
$yuanlai=array(
'"/resources/',
'"/uploads/',
'"/web/',
'href="/"',
'/web',
'typedir+\'/\'+v.aid+"',
'v.litpic',
);
//替换字符
$tihuan=array(
'"../resources/',
'"../uploads/',
'"',
'href="../index.html"',
'',
'v.aid+"',
'".."+v.litpic'
);
//查找的文件夹
$dir=WEBROOT.'/app/web';
//获取文件
$dirs=$this->deepScanDir($dir);
//文件字符串替换
foreach($dirs['file']as$file){
$file='G:\hospital\hospital\admin\app\web\yiyuanzhuanjia.html';
$txt=file_get_contents($file);
$txt=str_replace($yuanlai,$tihuan,$txt);
file_put_contents($file,$txt);echo$txt;exit;
}
}
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP目录操作技巧汇总》、《php文件操作总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。