Можно ли как-то сделать, что-бы самостоятельно искался нужный метод
Есть заранее прописанные методы, совпадающие с названием php файлов-страниц, а так же функция, которая возвращает названия всех методов:
class Routes
{
public function home(){}
public function news(){}
public function getNameRoute(){
return get_class_methods(Routes::class);
}
}
Далее идет функция поиска имени метода по uri и, если найдено совпадение, она отдает нужну одноименную страницу
$route = new Routes();
$uri = $_SERVER['REQUEST_URI'];
$pageName = 'content'.$uri.'.php';
$routeName = $route->getNameRoute();
$errors = 1;
foreach ($routeName as $name){
if('/'.$name === $uri){
require "$pageName";
$errors = 0;
break;
}
}
if(!empty($errors)){
require 'content/error.php';
}
Можно-ли как-то сделать, чтобы require '...' был внутри метода и искалось так же название метода, с его последующим вызовом. Извиняюсь за возможно не понятную формулировку
Источник: Stack Overflow на русском