Я не могу найти способ вызова метода под названием insertValue()
;Вызов метода из родительского класса в PHP?
Мой самозагрузки принимает 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();
}
Я вообще не могу понять, как вызвать функцию insertValue. Я пробовал $this->model->database->insertValue();
, но это не сработало.
P.S. Я замечаю, что когда я вызываю эту функцию, код под ней не вызывается, но сообщение об ошибке не указывается.
Пожалуйста, проверьте это [ссылка] (http://stackoverflow.com/editing-help), чтобы правильно отредактировать коды в сообщении. – hjpotter92
Попробуйте '$ this-> model-> database-> insertValue()', предполагая, что 'loadModel()' уже вызван. – Andy0708
В вашем коде есть синтаксические ошибки. –