我似乎找不到一种方法来调用名为 insertValue()
的方法;
我的引导程序获取 url 并将其分成几部分 www.URL.com/register/register 这样
变成url[0]=register;
url[1] = register;
$controller = new url[0];
$controller->loadModel();
if islet($url[1])
$controller->{url[1]};
class Controller {
public $model;
function __construct() {
$this->view = new View(); //(irrelevant)
}
public function loadModel($name) {
...
$this->model = new $modelName;
}
}
模型类如下
class Model {
public $database;
function__construct() {
$this->database = new Database();
}
}
所以数据库类如下
class Database {
insertValue(){
...
}
}
现在,我有一个引导程序,它创建一个扩展控制器的寄存器类,如下所示:
class Register extends Controller {
function__construct(){
parent::__construct();
}
public static function register (){
HERE IS WHERE I WANT TO CALL THE INSERT VALUE FUNCTION FROM DATABASE CLASS
}
}
引导程序还通过说Register->loadModel();
来创建我的模型类,它看起来像这样:
class registerModel extends Model {
function __construct() {
parent::__construct();
}
我完全不知道如何调用插入值函数。我试过$this->model->database->insertValue();
但没有用。
附言我注意到当我调用此函数时,它下面的代码不会被调用,但没有给出错误消息。
在控制器构造中调用loadModel()
后,您是否尝试过$this->model->database->insertValue()
?