Есть код:
$controller = new $controller_name;
$action = $action_name;
if(method_exists($controller, $action)) {
$controller->$action();
} else {
Route::ErrorPage();
}
Если класс и экшн существуют, то все ок, а если нет, то должна выполнятся
Route::ErrorPage404()
Пока разрабатывал на локальной машине на php5 все работало. Решил выложить на бесплатный хостинг потестить, там оказался php7. Теперь если запрашиваемый класс контроллера существует, то все работает, но если же такого класса не существует, то выдает такую ошибку:
Fatal error: Class 'Controller_aasd' not found in /profiles/g/gl/gle/glem1337/shop-asd-test.zzz.com.ua/admin/application/core/route.php on line 67
67-я строка это строка с кодом
$controller = new $controller_name;
. Правильно ли я понял что в php7 нельзя создавать объекты несуществующих классов? И как эту проблему можно обойти?
Так пробовал
$controller = new $controller_name();
- все равно не работает.