Роутинг¶
Возможность роутить запросы на нужные контроллеры без использования аддона SEO. Маршруты задаются через схему в виде:
$schema = array(
    '/route' => array(
        'param1' => 'value1',
        'param2' => 'value2',
    )
);
где ключ массива — маршрут, значение — набор параметров, которые передадутся в $_REQUEST при совпадении маршрута с REQUEST_URI.
Выражения¶
*— совпадение с любым URI[i]— совпадение с целым числом[i:id]— совпадение с целым числом и передача его в параметр id[a:action]— буквенно-цифровое совпадение и передача его в параметр action[h:key]— шестрадцатиричное совпадение и передача его в параметр key[:action]— любое совпадение до следующего слеша или до конца URI и передача его в параметр action[create|edit:action]— совпадение с create или edit и передача его в параметр action[*]— любое совпадение до следующего слеша[*:trailing]— любое совпадение до следующего слеша и передача его в параметр trailing[**:trailing]— любое совпадение до конца URI слеша и передача его в параметр trailing[:format]?— опциональный параметр, если сушествует - передача его в параметр format
Пример¶
$schema = array(
    '/images/thumbnails/[i:w]/[i:h]?/[**:image_path]' => array(
        'dispatch' => 'image.thumbnail'
    )
);
URI: /images/thumbnails/100/80/detailed/0/image.png. Результат:
array(
    'dispatch' => 'image.thumbnails',
    'w' => 100,
    'h' => 80,
    'image_path' => 'detailed/0/image.png'
)
URI: /images/thumbnails/100/detailed/0/image.png. Результат:
array(
    'dispatch' => 'image.thumbnails',
    'w' => 100,
    'h' => '',
    'image_path' => 'detailed/0/image.png'
)