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中使用Sockets 从Usenet中获取文件
Jan 10 PHP
php header()函数使用说明
Jul 10 PHP
PHP伪造referer实例代码
Sep 20 PHP
php函数实现判断是否移动端访问
Mar 03 PHP
jquery获取多个checkbox的值异步提交给php的方法
Jun 24 PHP
PHP中的Session对象如何使用
Sep 25 PHP
详解HTTP Cookie状态管理机制
Jan 14 PHP
高质量PHP代码的50个实用技巧必备(下)
Jan 22 PHP
基于php数组中的索引数组和关联数组详解
Mar 12 PHP
php从数据库中获取数据用ajax传送到前台的方法
Aug 20 PHP
定位地理位置PHP判断员工打卡签到经纬度是否在打卡之内
May 23 PHP
thinkphp 5框架实现登陆,登出及session登陆状态检测功能示例
Oct 10 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文件中bom的PHP代码
2012/03/13 PHP
Windows上php5.6操作mongodb数据库示例【配置、连接、获取实例】
2019/02/13 PHP
laravel 创建命令行命令的图文教程
2019/10/23 PHP
TopList标签和JavaScript结合两例
2007/08/12 Javascript
浅析JavaScript原型继承的陷阱
2013/12/03 Javascript
jquery下div 的resize事件示例代码
2014/03/09 Javascript
JavaScript获取表单enctype属性的方法
2015/04/02 Javascript
浅谈几种常用的JS类定义方法
2016/06/08 Javascript
bootstrap datetimepicker实现秒钟选择下拉框
2017/01/05 Javascript
JS实现iframe自适应高度的方法示例
2017/01/07 Javascript
关于vue-router路径计算问题
2017/05/10 Javascript
微信小程序tabBar底部导航中文注解api详解
2017/08/16 Javascript
在Vue组件中获取全局的点击事件方法
2018/09/06 Javascript
JavaScript 对引擎、运行时、调用堆栈的概述理解
2018/10/22 Javascript
easyUI 实现的后台分页与前台显示功能示例
2020/06/01 Javascript
[02:10]DOTA2亚洲邀请赛 EG战队出场宣传片
2015/02/07 DOTA
[36:13]Mineski vs iG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python监控网站运行异常并发送邮件的方法
2015/03/13 Python
python中print的不换行即时输出的快速解决方法
2016/07/20 Python
Python 3.x基于Xml数据的Http请求方法
2018/12/28 Python
教你一步步利用python实现贪吃蛇游戏
2019/06/27 Python
django中forms组件的使用与注意
2019/07/08 Python
python字符串反转的四种方法详解
2019/12/02 Python
使用Python pip怎么升级pip
2020/08/11 Python
Python ConfigParser模块的使用示例
2020/10/12 Python
pycharm 实现光标快速移动到括号外或行尾的操作
2021/02/05 Python
Dower & Hall官网:英国小众轻奢珠宝品牌
2019/01/31 全球购物
Schecker荷兰:狗狗用品和配件
2019/06/06 全球购物
应届生会计求职信
2013/11/11 职场文书
出纳会计岗位职责
2014/03/12 职场文书
医德医魂心得体会
2014/09/11 职场文书
幽默导游词开场白
2015/05/29 职场文书
2015领导干部廉洁自律工作总结
2015/07/23 职场文书
中学团支部工作总结
2015/08/13 职场文书
golang如何去除多余空白字符(含制表符)
2021/04/25 Golang
Python Parser的用法
2021/05/12 Python