Запилил я тут короче роутер небольшой.
Быдлокодный, походу.
Ну, собственно то, что я и хотел.
То есть ссылки типа /forum/thread/2281337
Он будет видеть и передавать это в массив self::$vars[], как
'forum' => '2281337'
В общем, докапайтесь до чего-нибудь здесь и обзовите меня плохими словами.
class Router
{
public static $route = '';
public static $vars = array();
function __construct () {
if (!empty($_GET['route'])) {
$url = explode('/', trim($_GET['route']));
$count = count($url);
$i = 0;
foreach ($url as $arr) {
if (is_numeric($arr)) {
$key = $url[$i - 1];
self::$vars += [$key => $arr];
unset($url[$i]);
} else
self::$route .= $arr.($count - 1 < $i ? '/' : '');
$i++;
}
if (file_exists(PATH.self::$route.'.php'))
require_once (PATH.self::$route.'.php'); elseif(is_dir(PATH.self::$route))
require_once (PATH.self::$route.'/index.php'); else {
header('Location: /404.html');
exit; }
} else return false;
}
}