我有一个名为的文件中的数据库凭据变量config.php
:
$db_server = 'localhost';
$db_user = 'username';
$db_password = 'secret'
$db_name = 'dbname';
现在,我在/ class文件夹下有一个PHP类,对于CRUD过程它工作得很好。命名为MysqlCrud.class.php
:
class Database {
private $db_host = 'localhost'; // Change as required
private $db_user = 'username'; // Change as required
private $db_pass = 'secret'; // Change as required
private $db_name = 'dbname'; // Change as required
}
但是,我想使用中的集中变量config.php
。这就是为什么我添加一些这样的行:
include('../config.php');
class Database {
global $db_server;
global $db_user;
global $db_password;
global $db_name;
private $db_host = $db_server; // Change as required
private $db_user = $db_user; // Change as required
private $db_pass = $db_password; // Change as required
private $db_name = $db_name; // Change as required
}
但是,我收到以下错误消息:
Parse error: syntax error, unexpected 'global' (T_GLOBAL), expecting function (T_FUNCTION) in /home/*** on line **
为什么我不能在Database类中使用config.php文件中的变量?我在这里做错了什么?谢谢。
您选择使用的方法的问题是该类不再可重用。每次实例化Database
该类时,它将使用全局变量。
我会更倾向于这样设置:
数据库.php
class Database {
private $host;
private $db_name;
private $username;
private $password;
function __construct($host, $db_name, $username, $password) {
$this->host = $host;
$this->db_name = $db_name;
$this->username = $username;
$this->password = $password;
}
}
然后在文件中使用Database
该类:
include('../config.php');
$db = new Database($db_server, $db_name, $db_user, $db_password);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句