Есть роутер, который разбирает url-адрес на контроллер, действие и параметры и запускает их в соответствии с заданными правилами (ниже приведу код). В файлах шаблонов относительные пути для картинок, стилей и прочего (от корневой директории), например: 'files/pictures/php.png'. Так вот, если выполняется правило преобразования url-адресов '' => 'gallery/show' или 'gallery' => 'gallery/show' то все отлично, а если 'gallery/show' => 'gallery/show' - то получаются неправильные пути, он почему-то добавляет к url само правило без последнего члена, в итоге: 'gallery/files/pictures/php.png'. Подскажите, кто знает, в чем проблема?
Вот сам код, прилагаю так же архив со всей структурой)
index.php
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?PHP
- {
- switch (ENVIRONMENT)
- {
- case 'development':
- case 'production':
- default:
- }
- }
- require_once SITE_PATH . '/config/default.php';
- function __autoload ($class)
- {
- global $config;
- 'core' => $config['path']['core'] . '/' . $class . CLASS_EXT,
- 'controllers' => $config['path']['controllers'] . '/' . $class . CLASS_EXT,
- 'models' => $config['path']['models'] . '/' . $class . CLASS_EXT,
- );
- $flag = FALSE;
- try
- {
- foreach ($paths as $path)
- {
- {
- include_once $path;
- $flag = TRUE;
- }
- }
- if (!$flag)
- {
- throw new Exception('Не найден файл класса: ' . $class);
- }
- }
- catch (Exception $e) {}
- }
- $router = new Router();
- $router->run();
- ?>