php教程

超轻量级php框架startmvc

php遍历替换目录下文件指定内容的方法

更新时间:2020-03-14 18:20:04 作者:startmvc
本文实例讲述了php遍历替换目录下文件指定内容的方法。分享给大家供大家参考,具体如下

本文实例讲述了php遍历替换目录下文件指定内容的方法。分享给大家供大家参考,具体如下:

在php中目录访问需要遍历了然后文件需要一个个打开进行访问操作了,下面我们来看一段php 替换目录下文件指定内容,具体如下:


/****************************
* 获取目录下的所有文件
* [$dir] 文件夹路径
****************************/
function deepScanDir($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);
 }
 return array (
 'dir' => $dirArr,
 'file' => $fileArr
 );
}
/*
* 替换成APP中可用的路径,在web文件夹中
*/
public function ok_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 遍历 替换 目录 文件 指定内容