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 日期加减的类,很不错
Oct 10 PHP
php中删除字符串中最先出现某个字符的实现代码
Feb 03 PHP
PHP 类相关函数的使用详解
May 10 PHP
ThinkPHP3.1新特性之Action参数绑定
Jun 19 PHP
php批量删除超链接的实现方法
Oct 19 PHP
PHP截取IE浏览器并缩小原图的方法
Mar 04 PHP
Symfony2框架学习笔记之HTTP Cache用法详解
Mar 18 PHP
PHP中子类重载父类的方法【parent::方法名】
May 06 PHP
浅谈PHP中try{}catch{}的使用方法
Dec 09 PHP
php头像上传预览实例代码
May 02 PHP
PHP后端银联支付及退款实例代码
Jun 23 PHP
Ubuntu上安装yaf扩展的方法
Jan 29 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
牡丹941资料
2021/03/01 无线电
使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法
2010/04/02 PHP
PHP计算百度地图两个GPS坐标之间距离的方法
2015/01/09 PHP
Laravel使用swoole实现websocket主动消息推送的方法介绍
2019/10/20 PHP
用Javascript读取中文COOKIE的解决办法
2007/02/15 Javascript
js中匿名函数的N种写法
2010/09/08 Javascript
JavaScript将相对地址转换为绝对地址示例代码
2013/07/19 Javascript
jQuery验证插件 Validate详解
2014/11/20 Javascript
Angular用来控制元素的展示与否的原生指令介绍
2015/01/07 Javascript
JavaScript暂停和继续定时器的实现方法
2016/07/18 Javascript
JavaScript 深层克隆对象详解及实例
2016/11/03 Javascript
javascript基本常用排序算法解析
2017/09/27 Javascript
详解基于Vue+Koa的pm2配置
2017/10/24 Javascript
AngularJs 终极购物车(实例讲解)
2017/11/08 Javascript
React Native中ScrollView组件轮播图与ListView渲染列表组件用法实例分析
2020/01/06 Javascript
extjs图形绘制之饼图实现方法分析
2020/03/06 Javascript
vuex分模块后,实现获取state的值
2020/07/26 Javascript
linux服务器快速卸载安装node环境(简单上手)
2021/02/22 Javascript
Python脚本实现自动发带图的微博
2016/04/27 Python
python实现八大排序算法(1)
2017/09/14 Python
Python使用pickle模块存储数据报错解决示例代码
2018/01/26 Python
python 实现将Numpy数组保存为图像
2020/01/09 Python
pytorch实现seq2seq时对loss进行mask的方式
2020/02/18 Python
python 读取二进制 显示图片案例
2020/04/24 Python
keras CNN卷积核可视化,热度图教程
2020/06/22 Python
印度尼西亚值得信赖的第一家网店:Bhinneka
2018/07/16 全球购物
Furla官网:意大利著名的皮革品牌
2019/08/06 全球购物
如何在发生故障的节点上重新安装 SQL Server
2013/03/14 面试题
建筑工程专业毕业生自荐信
2013/10/19 职场文书
将相和教学反思
2014/02/04 职场文书
运动会的口号
2014/06/09 职场文书
小学数学课题方案
2014/06/15 职场文书
2015年学校食堂工作总结
2015/04/22 职场文书
pytorch查看网络参数显存占用量等操作
2021/05/12 Python
详解Java实践之适配器模式
2021/06/18 Java/Android
Android在Sqlite3中的应用及多线程使用数据库的建议
2022/04/24 Java/Android