我需要调用一个函数someFunction()
当它在以下类结构中时如何引用它?
abstract class A
{
protected $session;
protected $model;
public function __construct()
{
$session = new classSession;
$model = new classModel;
}
}
class classModel
{
$this->session->someFunction();
}
我已尝试使用$this->session->someFunction()
,但它不起作用!
答案 0 :(得分:1)
首先,您需要将它放在函数的上下文中 - 代码不能在类体内独立存在。其次,对于classModel
访问$session
的任何内容,classModel
必须扩展类A
。你最终得到这样的东西:
class classModel extends A
{
public function foo()
{
$this->session->someFunction();
}
}
因此要执行$this->session->someFunction();
,您需要执行此操作:
$model = new classModel();
$model->foo();