Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Не хватает опыта понять=((


Recommended Posts

Здравствуйте всем! комментирую для себя все что происходит в опенкарте чтобы потом составить чтото наподобие mindmap как и что где вызываетсяя в какой последовательности обрабатывается, вообщем схему как работает эта цмс, загвоздка в классе Front возможны Вы подскажите

 

 

 

 

public function dispatch($action, $error) {
      $this->error = $error;
 
foreach ($this->pre_action as $pre_action) {
            
        $result = $this->execute($pre_action);
 
if ($result) {
$action = $result;
 
break;
}
}
 
while ($action) {
$action = $this->execute($action);
}
  }
    
    
    private function execute($action) {
       
if (file_exists($action->getFile())) {
require_once($action->getFile());
 
            
$class = $action->getClass();
            
           $controller = new $class($this->registry);
 
           
if (is_callable(array($controller, $action->getMethod()))) {
                
             $action = call_user_func_array(array($controller, $action->getMethod()), $action->getArgs());
} else {
$action = $this->error;
 
$this->error = '';
}
} else {
$action = $this->error;
 
$this->error = '';
}
 
return $action;
}
}
 
 
 
 
 
 
Конкретно непонятны здесь эти две конструкции как они читаются,что делают?
 
 
if ($result) {
$action = $result;
 
break;
}
}
 
while ($action) {
$action = $this->execute($action);
}

 

Спасибо!

Надіслати
Поділитися на інших сайтах


 
Конкретно непонятны здесь эти две конструкции как они читаются,что делают?
 
 
if ($result) {
$action = $result;
 
break;
}
}
 
while ($action) {
$action = $this->execute($action);
}

 

Спасибо!

ну это нужно вникать в MVC.

вкраце  здесь получаем экшен и передаем его в execute($action)

где подключается файл контролера и в нем запускается функция экшина с параметрами.

call_user_func_array(array($controller, $action->getMethod()), $action->getArgs());

 

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.