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

时间:2022-01-15 07:39:28

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

_saveconfig.php文件如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<?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配置文件如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?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程序设计有所帮助。