Учу php, делаю сайт с админкой. Правильно ли делать структуру в таком виде?
В корне index.php, в нем подключаю
include 'inc/functions.php';
include 'inc/get_functions.php';
include 'inc/main_tpl.php';
В functions.php специфичные функции вроде перевода строки в транслит, кропа и ресайза фоток.
В get_functions.php функции для получения данных из БД. Например:
- get_page_list для получения списка страниц,
- get_page получения страницы по ее id,
- get_page_title заголовок страницы по ее id,
- и т. д.
В main_tpl.php выводится содержимое страницы модуля (страницы, фото, каталог) в зависимости от $_GET запроса:
$_GET['section']) ? include 'modules/' . $_GET['section'] . '/index.php'
Каждый модуль в отдельной папке. Например, модуль фотогалереи в /modules/photo/*.
У каждого модуля свой index.php и файлы с шаблонами для вывода:
- photos_list_tpl.php выводит список фотографий,
- photos_add_tpl.php форма загрузки фотографий
- photos_view_tpl.php просмотр выбранной фотографии
- и т. п.
Для запросов в БД использую библиотеку SafeMySQL.
Стоит ли так дробить и все get функции собирать в файле inc/get_functions.php? Или будет правильней функции каждого модуля писать в самих модулях? И в целом как можно улучшить структуру?