如果我有一个包含变量的config.php文件,就像这样......
的config.php :
$cnf['dbhost'] = "0.0.0.0";
$cnf['dbuser'] = "mysqluser";
$cnf['dbpass'] = "mysqlpass";
如何从另一个文件中的类访问这些变量,例如......
INC / db.class.php :
class db() {
function connect() {
mysql_connect($cnf['dbhost'], $cnf['dbuser'], $cnf['dbpass']);
}
}
$db = new db();
所以,我可以在另一个文件中使用该类,例如......
的index.php :
<html>
<?php
include('config.php');
include('inc/db.class.php');
$db->connect();
?>
</html>
答案 0 :(得分:3)
在db脚本的开头包含include,require或require_once的配置文件。您还需要在要使用的函数中将$cnf
指定为全局,否则无法访问全局变量:
include "../config.php";
class db() {
function connect() {
global $cnf;
mysql_connect($cnf['dbhost'], $cnf['dbuser'], $cnf['dbpass']);
}
}
$db = new db();
修改强>: 在大项目中,我更喜欢使用boot.php,其中包含所有的php文件,因此我不需要在每个文件中包含我需要的所有内容。有了这个,我只需要将引导包含到index.php中并且必须处理所有定义。它稍慢但很舒服。
答案 1 :(得分:2)
只需在config.php
中加入inc/db.class.php
。
编辑(回答评论中询问的问题)
你可以做的是init.php
,如下所示,
include('config.php');
include('db.class.php');
include('file.php');
因此,您的课程将能够从config.php
访问变量。现在,对于index.php
,您只需要包含init.php
,所有课程,配置等都会包含在内。