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


Posted in PHP onNovember 10, 2016

本文实例讲述了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程序设计有所帮助。

PHP 相关文章推荐
php 友好URL的实现(吐血推荐)
Oct 04 PHP
执行、获取远程代码返回:file_get_contents 超时处理的问题详解
Jun 25 PHP
PHP eval函数使用介绍
Dec 08 PHP
使用CodeIgniter的类库做图片上传
Jun 12 PHP
PHP中的替代语法简介
Aug 22 PHP
php使用数组填充下拉列表框的方法
Mar 31 PHP
PHP版QQ互联OAuth示例代码分享
Jul 05 PHP
PHP中COOKIES使用示例
Jul 26 PHP
PHP编程开发怎么提高编程效率 提高PHP编程技术
Nov 09 PHP
PHP清除缓存的几种方法总结
Sep 12 PHP
如何让PHP编码更加好看利于阅读
May 12 PHP
PHP中16个高危函数整理
Sep 19 PHP
php实现有序数组打印或排序的方法【附Python、C及Go语言实现代码】
Nov 10 #PHP
PHP数组生成XML格式数据的封装类实例
Nov 10 #PHP
Linux平台php命令行程序处理管道数据的方法
Nov 10 #PHP
PHP中功能强大却很少使用的函数实例小结
Nov 10 #PHP
php事件驱动化设计详解
Nov 10 #PHP
PHP的消息通信机制测试实例
Nov 10 #PHP
PHP使用GD库输出汉字的方法【测试可用】
Nov 10 #PHP
You might like
php中通过正则表达式下载内容中的远程图片的函数代码
2012/01/10 PHP
PHP页面中文乱码分析
2013/10/29 PHP
php针对cookie操作的队列操作类实例
2014/12/10 PHP
Smarty高级应用之缓存操作技巧分析
2016/05/14 PHP
php 使用curl模拟登录人人(校内)网的简单实例
2016/06/06 PHP
PHP设计模式之单例模式定义与用法分析
2019/03/26 PHP
php 的多进程操作实践案例分析
2020/02/28 PHP
学习YUI.Ext 第三天
2007/03/10 Javascript
兼容多浏览器的字幕特效Marquee的通用js类
2008/07/20 Javascript
JavaScript监测ActiveX控件是否已经安装过的代码
2008/09/02 Javascript
JavaScript是否可实现多线程  深入理解JavaScript定时机制
2009/12/22 Javascript
一些mootools的学习资源
2010/02/07 Javascript
SuperSlide2实现图片滚动特效
2014/06/20 Javascript
jQuery实现拖拽效果插件的方法
2015/03/23 Javascript
javascript正则表达式总结
2016/02/29 Javascript
Javascript中arguments对象的详解与使用方法
2016/10/04 Javascript
Ajax基础知识详解
2017/02/17 Javascript
self.attachevent is not a function的解决方法
2017/04/04 Javascript
jquery select插件异步实时搜索实例代码
2017/10/20 jQuery
webpack4 CSS Tree Shaking的使用
2018/09/03 Javascript
vue-cli安装使用流程步骤详解
2018/11/08 Javascript
JS监听事件的叠加和移除功能
2018/11/19 Javascript
微信小程序实现上拉加载功能示例【加载更多数据/触底加载/点击加载更多数据】
2020/05/29 Javascript
pandas把dataframe转成Series,改变列中值的类型方法
2018/04/10 Python
浅谈python 读excel数值为浮点型的问题
2018/12/25 Python
python使用pipeline批量读写redis的方法
2019/02/18 Python
Selenium+Python 自动化操控登录界面实例(有简单验证码图片校验)
2019/06/28 Python
Python实现删除某列中含有空值的行的示例代码
2020/07/20 Python
django有哪些好处和优点
2020/09/01 Python
实例教程 一款纯css3实现的数字统计游戏
2014/11/10 HTML / CSS
浅析border-radius如何兼容IE
2016/04/19 HTML / CSS
C++面试题:关于链表和指针
2013/06/05 面试题
青春奉献演讲稿
2014/05/08 职场文书
2014高三学生考试作弊检讨书
2014/12/14 职场文书
办公室日常管理制度
2015/08/04 职场文书
Golang标准库syscall详解(什么是系统调用)
2021/05/25 Golang