php使用COPY函数更新配置文件的方法


Posted in PHP onJune 18, 2015

本文实例讲述了php使用COPY函数更新配置文件的方法。分享给大家供大家参考。具体如下:

_saveconfig.php文件如下:

<?php
/*
 * File: _saveconfig.php
 * 
 * Modified: 2010-7-11
 * By:liulang
 * 说明:涉及到两个文件:_saveconfig.php和config.php当对后台的一些全局配置变量进行更新时,
 * 就更改后台的config.php然后通过这个文件更改前台的config.php文件(前后台文件都一样),
 * 这个是我曾经用过的一个方法,觉得还不错,拿出来与大家分享
 *
 * Created: 2010-6-20
 * By: liulang (xujiaphp@gmail.com)
 * 
 */
  $srcFile = '../'.$dRootDir.'#data/config.php';
  $dstFile = $dRootDir.'config.php'; 
  $content = file_get_contents($srcFile);
  $arr = array
  (
     array('SITENAME', $gSite['siteName']),
     array('SITENAMEEN', $gSite['siteNameEn']),
     array('SITEKEYWORDS', $gSite['siteKeywords']),
     array('SITEDESCRIPTION', $gSite['siteDescription']),
     array('URLPREFIX', $gUrlPrefix),
     array('DBHOST', $gDb['host']),
     array('DBUSER', $gDb['user']),
     array('DBPWD', $gDb['pwd']),
     array('DBNAME', $gDb['db']),
     array('DBPREFIX', $gDb['prefix']),
     array('DIR', $gUpload['dir']),
     array('IMAGEWIDTH', $gUpload['imageWidth']),
     array('IMAGEHEIGHT', $gUpload['imageHeight']),
     array('CONTACTUS', $contactus),
     array('MENUHIDDENDIV', $menuhiddendiv),
     array('THEME', $gTheme),
     array('DATE', date('Y-m-d')),
     array('USER', $dAdminName)
   );
   for ($i = 0; $i < count($arr); $i++)
   {
    $content = str_replace('~`~'.$arr[$i][0].'~`~', $arr[$i][1], $content);
   } 
   copy($dRootDir.'config.php', $dRootDir.'bak.config.php');
   //copy($dRootDir.'bak.config.php', '../'.$dRootDir.'config.php');
   $done = file_put_contents($dstFile, $content);
   copy($dstFile, '../'.$dRootDir.'config.php');
?>

config.php配置文件如下:

<?php
/*
 * File: config.php
 * 
 * Modified: 2010-09-20
 * By:admin
 * 
 * Created: 2010-6-20
 * By: liulang (xujiaphp@gmail.com)
 * 
 */
  $gVersion = '1.0';
  $gDb = array
  (
    'host' => 'localhost',   //主机名
    'user' => 'root',   //用户名
    'pwd' => '',    //密码
    'db' => 'sino',    //数据库名
    'prefix' => 'sin_'  //数据库前缀
  );
  $gSite = array
  (
    'siteName' => '公司名',   
    'siteNameEn' => 'we are the company',  
    'siteKeywords' => '药物,医药,制药',  
    'siteDescription' => '公司名是一家从事00方面的公司' 
  );
  $gUpload = array
  (
    'dir' => 'uploads',
    'imageWidth' => '120',
    'imageHeight' => '*'  
  );
  $contactus = '';
  $menuhiddendiv = "";
  $FROMURL=$_SERVER["HTTP_REFERER"]?$_SERVER["HTTP_REFERER"]:$HTTP_SERVER_VARS["HTTP_REFERER"];
  $dRootDir = '../';
  $conn = mysql_connect($gDb['host'],$gDb['user'],$gDb['pwd']);
  mysql_select_db($gDb['db']) or die('database connect error!'); 
  mysql_query("SET NAMES 'gbk'"); 
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
PHP编码规范-php coding standard
Mar 16 PHP
PHP 命名空间实例说明
Jan 27 PHP
php4与php5的区别小结(配置异同)
Dec 20 PHP
php生成随机密码自定义函数代码(简单快速)
May 10 PHP
php操作XML、读取数据和写入数据的实现代码
Aug 15 PHP
让ThinkPHP支持大小写url地址访问的方法
Oct 31 PHP
PHP实现下载断点续传的方法
Nov 12 PHP
PHP二分查找算法示例【递归与非递归方法】
Sep 29 PHP
如何修改Laravel中url()函数生成URL的根地址
Aug 11 PHP
thinkPHP5.1框架使用SemanticUI实现分页功能示例
Aug 03 PHP
laravel实现上传图片的两种方式小结
Oct 12 PHP
浅谈Laravel模板实体转义带来的坑
Oct 22 PHP
ThinkPHP里用U方法调用js文件实例
Jun 18 #PHP
php实现mysql数据库分表分段备份
Jun 18 #PHP
php遍历树的常用方法汇总
Jun 18 #PHP
php编写简单的文章发布程序
Jun 18 #PHP
试用php中oci8扩展
Jun 18 #PHP
浅谈PDO的rowCount函数
Jun 18 #PHP
基于PHP实现的事件机制实例分析
Jun 18 #PHP
You might like
php的access操作类
2008/04/09 PHP
php对文件进行hash运算的方法
2015/04/03 PHP
php微信公众平台开发之微信群发信息
2016/09/13 PHP
通过php动态传数据到highcharts
2017/04/05 PHP
Eclipse PHPEclipse 配置的具体步骤
2017/08/08 PHP
php获取微信共享收货地址的方法
2017/12/21 PHP
php中get_object_vars()在数组的实例用法
2021/02/22 PHP
JavaScript中使用replace结合正则实现replaceAll的效果
2010/06/04 Javascript
含有CKEditor的表单如何提交
2014/01/09 Javascript
js格式化时间和js格式化时间戳示例
2014/02/10 Javascript
jQuery窗口、文档、网页各种高度的精确理解
2014/07/02 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
2015/08/11 Javascript
jQuery实现的分子运动小球碰撞效果
2016/01/27 Javascript
fullPage.js和CSS3实现全屏滚动效果
2017/05/05 Javascript
详解微信小程序 相对定位和绝对定位
2017/05/11 Javascript
使用AngularJS对表单提交内容进行验证的操作方法
2017/07/12 Javascript
使用重写url机制实现验证码换一张功能
2017/08/01 Javascript
利用Dectorator分模块存储Vuex状态的实现
2019/02/05 Javascript
原生JS实现天气预报
2020/06/16 Javascript
JavaScript 异步时序问题
2020/11/20 Javascript
python GUI实现小球满屏乱跑效果
2019/05/09 Python
Python lambda表达式filter、map、reduce函数用法解析
2019/09/11 Python
python中自带的三个装饰器的实现
2019/11/08 Python
python创建ArcGIS shape文件的实现
2019/12/06 Python
用python实现一个简单计算器(完整DEMO)
2020/10/14 Python
CSS3中各种颜色属性的使用教程
2016/05/17 HTML / CSS
澳大利亚领先的在线美容商城:Adore Beauty
2017/04/14 全球购物
Stella McCartney官网:成衣、包袋、香水、内衣、童装及Adidas系列
2018/12/20 全球购物
日本最大化妆品和美容产品的综合口碑网站:cosme shopping
2019/08/28 全球购物
巴西备受欢迎的服装和生活方式品牌:FARM Rio
2020/02/04 全球购物
培训主管的岗位职责
2013/11/23 职场文书
工伤赔偿协议书
2014/04/15 职场文书
2014年终个人总结报告
2015/03/09 职场文书
未婚证明范本
2015/06/15 职场文书
公司老总年会致辞
2015/07/30 职场文书
PyTorch梯度裁剪避免训练loss nan的操作
2021/05/24 Python