@danilovevgen
веб разработчик

MVC PHP как сделать правильный запрос к моделям?

Есть функция для вызова моделей из внутри контроллера:
class Controller	
{
	// connect models
	protected function model($model_name) {
		// check if model is exist
		if (file_exists('models/'.$model_name.'.php')) {

		    require_once('models/'.$model_name.'.php');
			
			 return new $model_name();
		} else {
			// return nothing if model dosent exist
			return false;
		}

	}
}

Вызывается кодом - $this->model('model_name'); Но проблема в том, что то, что находится внутри модели, которой мы вызываем этой фнукицей - срабатывает 2 раза. То есть например если в модели есть функция - getProducts() - оно выполнит её по умолчанию, как только мы подключим эту модель, не зависимо нужна ли нам эта функция сейчас или нет. Как настроить вызов моделей, чтобы выполнять функции только там где они нужны? Например если вот таким способом выполнять функцию из модели -
$products = $this->model('products');
$products->getProducts($param); 
echo $products;
  • Вопрос задан
  • 219 просмотров
Пригласить эксперта
Ответы на вопрос 1
@dev400
лично я юзаю модель(use Common\Model;), создаю объект модели в классе родителе базового контроллера(записываю в свойство) ну и конечно пользуюсь spl_autoload_register
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы