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速度全攻略
Oct 09 PHP
解决MySQL中文输出变成问号的问题
Jun 05 PHP
基于HTTP长连接的"服务器推"技术的php 简易聊天室
Oct 31 PHP
php解析url的三个示例
Jan 20 PHP
PHP图片裁剪函数(保持图像不变形)
May 04 PHP
ThinkPHP中URL路径访问与模块控制器之间的关系
Aug 23 PHP
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
Sep 24 PHP
CI框架学习笔记(一) - 环境安装、基本术语和框架流程
Oct 26 PHP
Zend Framework入门知识点小结
Mar 19 PHP
php项目中类的自动加载实例讲解
Sep 12 PHP
Laravel ORM 数据model操作教程
Oct 21 PHP
php装饰者模式简单应用案例分析
Oct 23 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验证码类实例分享
2013/12/27 PHP
PHP实现二维数组按某列进行排序的方法
2016/11/18 PHP
PHP字典树(Trie树)定义与实现方法示例
2017/10/09 PHP
为jquery.ui.dialog 增加“自动记住关闭时的位置”的功能
2009/11/24 Javascript
JavaScript 代码压缩工具小结
2012/02/27 Javascript
jquery统计用户选中的复选框的个数
2014/06/06 Javascript
网页实时显示服务器时间和javscript自运行时钟
2014/06/09 Javascript
jquery中使用循环下拉菜单示例代码
2014/09/24 Javascript
jQuery源码解读之removeClass()方法分析
2015/02/20 Javascript
JS实现鼠标点击展开或隐藏表格行的方法
2015/03/03 Javascript
基于jQuery实现带动画效果超炫酷的弹出对话框(附源码下载)
2016/02/22 Javascript
jQuery+json实现动态创建复杂表格table的方法
2016/10/25 Javascript
jquery html5 视频播放控制代码
2016/11/06 Javascript
百度多文件异步上传控件webuploader基本用法解析
2016/11/07 Javascript
随机生成10个不重复的0-100的数字(实例讲解)
2017/08/16 Javascript
vue中的provide/inject的学习使用
2018/05/09 Javascript
jquery判断滚动条距离顶部的距离方法
2018/09/05 jQuery
详解vue或uni-app的跨域问题解决方案
2020/02/21 Javascript
[01:52]2020年DOTA2 TI10夏季活动预告片
2020/07/15 DOTA
[58:00]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第二场 2月7日
2021/03/11 DOTA
安装Python的web.py框架并从hello world开始编程
2015/04/25 Python
Python实现检测文件MD5值的方法示例
2018/04/11 Python
Django contenttypes 框架详解(小结)
2018/08/13 Python
python创建文件时去掉非法字符的方法
2018/10/31 Python
关于python多重赋值的小问题
2019/04/17 Python
pytorch中图像的数据格式实例
2020/02/11 Python
python 使用raw socket进行TCP SYN扫描实例
2020/05/05 Python
Python爬虫设置Cookie解决网站拦截并爬取蚂蚁短租的问题
2021/02/22 Python
如何让pre和textarea等HTML元素去掉滚动条自动换行自适应文本内容高度
2019/08/01 HTML / CSS
美国女孩服装购物网站:Justice
2017/03/04 全球购物
印度尼西亚最大和最全面的网络商城:Blibli.com
2017/10/04 全球购物
HomeAway的巴西品牌:Alugue Temporada
2018/04/10 全球购物
女士鞋子、包包和服装在线,第一款10美元:ShoeDazzle
2019/07/26 全球购物
单位刻章介绍信范文
2014/01/11 职场文书
全国优秀教师事迹材料
2014/08/26 职场文书
Python利器openpyxl之操作excel表格
2021/04/17 Python