Странные ответы, человек ведь не об этом спрашивал. Причем тут ЧПУ и фреймворки?
Вроде как автор не горит желанием делать тотальный рефакторинг.
Кстати у нас на работе, когда ушел один динозавр-программист, стали доступными его коды и там были файлы с условиями в тысячи строк. Как вы сами понимаете — такое невозможно привести в божеский вид, целой команде пришлось переписывать всё с нуля.
Но именно костыль, который мы сделали изначально, дабы *причесать* немного коды, перед тем как нам дали добро всё писать с нуля заключался в:
1. Написали небольшой раутер, который принимает GET параметры mod и do (модуль/класс и метод который вызвать), в вашем случае — файл и название функции которую вызвать.
2. Создали список в отдельном файле в виде массива который содержит в себе ключи названия модулей, внутри каждого массив с двумя элементами — название файла или прямой путь до него и метод который вызывать по дефолту.
т.е вам, по сути, если я правильно понял ваш код, можно создать перепись всех подгружаемых файлов которые прописаны в диком if ( ) else ( ) в примерно таком виде:
Array(
'news' => Array(
'file' => '/functions/news.php',
'любой_другой_параметр_нужный_вам' => 'и_его_значение'
),
'users' => Array(
'file' => '/functions/users/user.php',
'abx' => 'zxc'
)
);
Убить все условия, и сделать что-то вроде:
$module = (!empty($_GET['module']) ? $_GET['module'] : false);
if ( $module ) {
if ( isset($myModules[ $module ]) ) {
// подгрузить файл, прочитать еще какой-то параметр, может название функции в файле и вызвать ее.
exit;
}
}
// показать что-то дефолтное если запрошенный модуль не найден?
Я правильно понял задачу?