php干扰函数,php – 类构造函数干扰另一个类

本质上,我只是创建两个类,其中一个类(在本例中为A类)在另一个类(在本例中为B类)中运行一个函数,以从数据库中获取一些信息.

但是,当B_runtime()实际调用数据库时,我得到错误无法访问受保护的属性A :: $db.

我不明白的是,即使我在两个类中都有两个__construct,PDO语句在使用A类的数据库连接时非常持久.

我确信这与我在A类中运行B_runtime()的事实有关,因为如果我从A类外部调用它,就不会发生这种情况.

我知道我可以简单地更改受保护的$db;但是,在A类公共变量中,我真的很好奇如何解决这个问题.

ob_start();

include('/config.php');

ob_end_clean();

$A = new A($db);

$B = new B($db);

echo $A->A_runtime();

class A{

protected $db;

public function __construct($db){

$this->db = $db;

}

public function A_runtime(){

return B::B_runtime();

}

}

class B{

protected $db;

public function __construct($db){

$this->db = $db;

}

public function B_runtime(){

$preparedStatement = $this->db->prepare('SELECT * FROM z_mod_html WHERE ModuleLink = :moduleid LIMIT 1');

$preparedStatement->execute(array(':moduleid' => '1'));

$rows = $preparedStatement->fetchAll();

return $rows[0]['HTML'];

}

}

很抱歉有很多代码 – 如果有人有任何想法或建议,将不胜感激.谢谢.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值