用PHP编写配置文件

时间:2012-05-31 19:48:54

标签: php

  

可能重复:
  writing to a .php file?

所以我有一个我从头创建的CMS的config.php文件。该文件具有如下所示的结构:

<?php

date_default_timezone_set( "America/Phoenix" );
define( "DB_HOST_USER", "mysql:host=localhost;dbname=db_cms" );
define( "DB_USERNAME", "username" );
define( "DB_PASSWORD", "password" );
define( "CMS_TITLE", "Sample Title");
define( "USERNAME", "cms_user");
define( "PASSWORD", "cms_password");

?>

我的问题是如何写入此文件并使用PHP将其保存到磁盘。 非常感谢帮助。

编辑:我看到WordPress使用类似的文件结构来存储用户/应用程序配置,如here所述。我只是想知道我是否可以更改上面的文件(config.php)并在那里存储新设置。例如,我想将USERNAME设置为blog_user(define( "USERNAME", "blog_user");)。是否可以在不重写整个文件的情况下存储此更改?

3 个答案:

答案 0 :(得分:4)

我不确定你为什么要这样做,但只要用户PHP正在运行,就可以使用file_put_contents写入任何文件:

file_put_contents('filename', '<?php

date_default_timezone_set( "America/Phoenix" );
define( "DB_HOST_USER", "mysql:host=localhost;dbname=db_cms" );
define( "DB_USERNAME", "username" );
define( "DB_PASSWORD", "password" );
define( "CMS_TITLE", "Sample Title");
define( "USERNAME", "cms_user");
define( "PASSWORD", "cms_password");

?>
');

答案 1 :(得分:0)

假设您要将其保存到服务器上的磁盘,可以使用以下代码:

$ourFileName = "testFile.txt";
$temp = file_get_contents($ourFileName);

对$ temp进行必要的更改,以便添加新数据等,然后:

file_put_contents($ourFileName,$temp);

http://php.net/manual/en/function.file-get-contents.php

答案 2 :(得分:0)

有很多方法可以存储配置数据。试试这个Stack Overflow:Fastest way to store easily editable config data in PHP?