2011-06-20 96 views
9

我想要做的是做一个安装文件,用户输入数据库,用户名,密码和主机作为php系统安装的第一步。如何使用php创建.php文件?

+3

参考文献:[PHP:文件系统的功能](http://php.net/manual/en/ref.filesystem.php) –

+0

['file_put_contents()'](http://www.php.net/manual/en/function.file-put-contents.php) –

+0

http://php.net/function.fwrite –

回答

9

这很容易是一样的。简单地写一个带有php扩展名的文件,如其他人提到的

但我宁愿写一个ini文件来获取配置数据,稍后用parse_ini_file加载它们。

更新:这里是做一个例子:

<?php 
$config = array(
    "database" => "test", 
    "user"  => "testUser" 
); 

function writeConfig($filename, $config) { 
    $fh = fopen($filename, "w"); 
    if (!is_resource($fh)) { 
     return false; 
    } 
    foreach ($config as $key => $value) { 
     fwrite($fh, sprintf("%s = %s\n", $key, $value)); 
    } 
    fclose($fh); 

    return true; 
} 

function readConfig($filename) { 
    return parse_ini_file($filename, false, INI_SCANNER_NORMAL); 
} 

var_dump(writeConfig("test.ini", $config)); 
var_dump(readConfig("test.ini")); 
+0

你能告诉我更多关于那个吗?我如何创建一个安装程序来使用(写入ini文件)来创建配置文件? –

+1

我添加了一个例子,但它只是一个没有太多错误处理的简单例子,如果你有参数和空格,你需要在'sprintf'处跳过。 –

+0

我试过了,但出现一个错误:警告:parse_ini_file()的参数数量错误。另外,如何使用表单输入来创建配置文件,以及如何读取配置文件以便能够连接到我网站上每个页面上的数据库? –

12

它为您创建的其他文件,但只是添加扩展.php

$fp=fopen('filename.php','w'); 
fwrite($fp, 'data to be written'); 
fclose($fp); 
+1

谢谢,但如何使用表单输入写入.php页面: 例如,当用户输入数据库名称时,它应该用在我们想要创建的config.php文件中。是否可以使用$ database = $ _POST ['database'];在fwrite函数里面? –