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生成静态页面详解
Dec 05 PHP
php REMOTE_ADDR之获取访客IP的代码
Apr 22 PHP
php中获取指定IP的物理地址的代码(正则表达式)
Jun 23 PHP
php 模拟GMAIL,HOTMAIL(MSN),YAHOO,163,126邮箱登录的详细介绍
Jun 18 PHP
php读取文件内容到数组的方法
Mar 16 PHP
php使用正则表达式进行字符串搜索的方法
Mar 23 PHP
php去除二维数组的重复项方法
Nov 03 PHP
php微信公众号js-sdk开发应用
Nov 28 PHP
php 三大特点:封装,继承,多态
Feb 19 PHP
在Yii2特定页面如何禁用调试工具栏Debug Toolbar详解
Aug 07 PHP
Thinkphp自定义生成缩略图尺寸的方法
Aug 05 PHP
详解将数据从Laravel传送到vue的四种方式
Oct 16 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输出Excel文件类
2010/02/08 PHP
用PHP解决的一个栈的面试题
2014/07/02 PHP
php结合redis高并发下发帖、发微博的实现方法
2016/12/15 PHP
使一个函数作为另外一个函数的参数来运行的javascript代码
2007/08/13 Javascript
Extjs ajax同步请求时post方式参数发送方式
2009/08/05 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
JavaScript实现网页上的浮动广告的简单方法
2013/06/14 Javascript
jquery查找父元素、子元素(个人经验总结)
2014/04/09 Javascript
JavaScript 面向对象与原型
2015/04/10 Javascript
详解AngularJS中的依赖注入机制
2015/06/17 Javascript
JavaScript与HTML的结合方法详解
2015/11/23 Javascript
BootStrap实现树形目录组件代码详解
2016/06/21 Javascript
jqGrid用法汇总(全经典)
2016/06/28 Javascript
使用jquery实现的循环连续可停顿滚动实例
2016/11/23 Javascript
JS DOMReady事件的六种实现方法总结
2016/11/23 Javascript
bootstrap实现每隔5秒自动轮播效果
2016/12/20 Javascript
vue双向绑定的简单实现
2016/12/22 Javascript
JS中解决谷歌浏览器记住密码输入框颜色改变功能
2017/02/13 Javascript
走进javascript——不起眼的基础,值和分号
2017/02/24 Javascript
基于VUE选择上传图片并页面显示(图片可删除)
2017/05/25 Javascript
深入理解Promise.all
2018/08/08 Javascript
layui复选框限制选择个数的方法
2019/09/18 Javascript
js实现图片实时时钟
2020/01/15 Javascript
详解Python3中字符串中的数字提取方法
2017/01/14 Python
PyCharm+PySpark远程调试的环境配置的方法
2018/11/29 Python
基于Python的ModbusTCP客户端实现详解
2019/07/13 Python
python 3.6.7实现端口扫描器
2019/09/04 Python
django ajax发送post请求的两种方法
2020/01/05 Python
Keras 切换后端方式(Theano和TensorFlow)
2020/06/19 Python
python设置中文界面实例方法
2020/10/27 Python
html5定制表单_动力节点Java学院整理
2017/07/11 HTML / CSS
Python里面search()和match()的区别
2016/09/21 面试题
我有一个梦想演讲稿
2014/05/05 职场文书
海洋天堂观后感
2015/06/05 职场文书
Python Socket编程详解
2021/04/25 Python
python基础之文件处理知识总结
2021/05/23 Python