Добрый день. Пишу простую CRM для своей фирмы. Состоять будет из разделов:
1. Пользователи
2. Заказы
3. Товары (книги)
Полей в бд будет минимум.
Точка входа index.php
Не могу определиться со схемой.
1. Динамически подключаемые скрипты
switch($_GET['url']){
case "users" :
require_once "users.php";
break;
case "orders" :
require_once "orders.php";
break;
case "products" :
require_once "products.php";
break;
}
2. Тот же пункт 1, но вместо свича
$source = $_SERVER['DOCUMENT_ROOT'].'/pages/'.$_GET['url'].'.php';
if(file_exists($source)){
require_once $source;
}
3. Как и пункт 2, но с добавлением функции/или класса (как на примере)
$controller_name = $_GET['url'];
$controller_path = $_SERVER['DOCUMENT_ROOT'].'/controllers/'.$controller_name.'.php';
if(file_exists($source)){
require_once $source;
if(class_exists($controller_name) && method_exists($controller_name, 'IndexAction')){
$page = new $controller_name();
echo $page->IndexAction();
}
}
4. MVC. Но на счет этой схемы не уверен, что нужно под такие простые задачи. Да и мне нужно, чтобы контроллер и вью по каждой странице находилось в одной папке.