Всем привет, сделал такой роутинг, работает без проблем.
/index.php
<?php
# Шапка
include('inc/head.php');
# Require Route Class
require 'route.php';
# Функция Route
$route = new Route();
# Меню профиля
$menu = include('inc/menu.php');
# Основные
$route->add("/",function(){include('pages/main.php');});
# Страницы юзерс и меню
$route->add('/users/acc',function(){$menu;include('pages/users/acc.php');}); // Профиль
$route->add('/users/acc2',function(){$menu;include('pages/users/acc2.php');}); // Профиль-2
# Сабмит
$route->submit();
print_r($route);
# Подвал
include('inc/foot.php');
?>
/route.php
<?php
class Route
{
function add($r, callable $c)
{
$this->r[$r] = $c;
}
function submit()
{
$p = (isset($_SERVER['PATH_INFO'])) ? $_SERVER['PATH_INFO'] : '/';
$this->r[$p]();
}
}
?>
/.htaccess
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.+)$ index.php/$1 [QSA,L]
-----------------------------------
Вопрос как с базой работать? без объектов т.д.
db тут /class/db.class.php
------------------------------------
этот запрос делаю на странице /pages/index.php
# Статистика регистраций за 24 часа
$db->Query("SELECT COUNT(*) FROM db_stats_r24");
$stats_new = $db->FetchArray();
Выводит такую ошибку
Notice: Undefined variable: db in C:\OpenServer\domains\abc5\pages\_index.php on line 2
-----------------------
возникла такая мысль все это из-за $this -> в роуте что вместо нее ставить?