这是我的文件库MySQLi连接ATM: - class.core.php - class.site.php - global.php访问从另一个类
我试图访问从核心数据库连接现场。我尝试了一切,没有任何工作。
class.core.php:
class Core {
public $db;
public $host = "localhost";
public $username = "root";
public $password = "***";
public $dbname = "***";
public function __construct() {
$this->db = new mysqli($this->host, $this->username, $this->password, $this->dbname);
if($this->db->connect_errno) {
echo $this->db->connect_error();
die();
}
return $this->db;
}
}
class.site.php:
class Site {
public $db;
public function __construct(Core $db) {
$this->db = $db->db;
}
}
global.php:
require_once("_classes/class.core.php");
require_once("_classes/class.site.php");
$core = new Core();
$site = new Site();
我需要的所有帮助我能。谢谢:)
..或者你可以使用'global $ core'在两个构造函数 –
中注入'MySQLi'实例。在Site对象的构造函数中,然后是'$ this-> db = $ core-> db;'... –
@ user0000001为什么要引入全局变量?特别是因为通过执行'$ site = new Site($ core)'也可以达到同样的效果......'虽然这会严重违反[LoD](http://c2.com/cgi/wiki?LawOfDemeter) –