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 相关文章推荐
第六节--访问属性和方法
Nov 16 PHP
六酷社区论坛HOME页清新格调免费版 下载
Mar 07 PHP
在同一窗体中使用PHP来处理多个提交任务
May 08 PHP
php set_time_limit(0) 设置程序执行时间的函数
May 26 PHP
php 获取全局变量的代码
Apr 21 PHP
PHP中的正则表达式函数介绍
Feb 27 PHP
php中debug_backtrace、debug_print_backtrace和匿名函数用法实例
Dec 01 PHP
php递归法读取目录及文件的方法
Jan 30 PHP
php通过分类列表产生分类树数组的方法
Apr 20 PHP
PHP中substr_count()函数获取子字符串出现次数的方法
Jan 07 PHP
PHP简单实现上一页下一页功能示例
Sep 14 PHP
解决laravel 5.1报错:No supported encrypter found的办法
Jun 07 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 Hash函数,增强密码安全
2011/02/25 PHP
基于php socket(fsockopen)的应用实例分析
2013/06/02 PHP
php操作MongoDB基础教程(连接、新增、修改、删除、查询)
2014/03/25 PHP
PHP模拟asp.net的StringBuilder类实现方法
2015/08/08 PHP
Zend Framework教程之Autoloading用法详解
2016/03/08 PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
2016/11/09 PHP
Laravel框架源码解析之反射的使用详解
2020/05/14 PHP
汉化英文版的Dreamweaver CS5并自动提示jquery
2010/11/25 Javascript
基于jQuery的投票系统显示结果插件
2011/08/12 Javascript
JavaScript让网页出现渐隐渐显背景颜色的方法
2015/04/21 Javascript
JavaScript声明变量名的语法规则
2015/07/10 Javascript
Bootstarp风格的toggle效果分享
2016/02/23 Javascript
jQuery实现的自定义弹出层效果实例详解
2016/09/04 Javascript
JavaScript 闭包详细介绍
2016/09/28 Javascript
你点的 ES6一些小技巧,请查收
2018/04/25 Javascript
浅谈webpack4 图片处理汇总
2018/09/12 Javascript
解决layer弹出层的内容页点击按钮跳转到新的页面问题
2019/09/14 Javascript
[34:39]Secret vs VG 2018国际邀请赛淘汰赛BO3 第二场 8.23
2018/08/24 DOTA
[54:28]EG vs OG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
解决python删除文件的权限错误问题
2018/04/24 Python
tensorflow实现简单的卷积神经网络
2018/05/24 Python
pytorch自定义二值化网络层方式
2020/01/07 Python
12个不为大家熟知的HTML5设计小技巧
2016/06/02 HTML / CSS
Kendra Scott官网:美国领先的时尚配饰品牌
2020/10/22 全球购物
艺术系应届生的自我评价
2013/10/19 职场文书
财务会计毕业生自荐信
2013/11/02 职场文书
计算机应用专业推荐信
2013/11/13 职场文书
相亲活动方案
2014/08/26 职场文书
股东合作协议书
2014/09/12 职场文书
学生夜不归宿检讨书
2014/09/23 职场文书
2014年组织部工作总结
2014/11/14 职场文书
2014年电工工作总结
2014/11/20 职场文书
2014员工聘用协议书(最新版)
2014/11/24 职场文书
诚信考试承诺书范文
2015/04/29 职场文书
首都博物馆观后感
2015/06/05 职场文书
JS创建或填充任意长度数组的小技巧汇总
2021/10/24 Javascript