Главное меню
все форумы все темы форума добавить тему
А как работать с классом URL?
Собственно, он вызывается почти в самом начале работы, так что распарсенные данные уже находятся в массиве $_GET. Соотвественно, в процессе работы парсить больше ничего не надо.
Сейчас реализовано две схемы url:
flex
выглядит как /path/to/node-action.var1/var2/var3/.../varN.ext
где
/path/to/node - идентификатор узла в структуре сайта
var1... - переменные
ext - тип данных (можно подставить почти любой)
если в конце подставить ?simevar=someval то это тоже будет корректно обрабатываться
 
flat
выглядит как /path/to/node.ext?action=xxx&var1=xxx&var2=...&varN
В принципе, тоже самое, но в более привычном виде.
 
Чтобы не приходилось формировать все это руками, создан специальный метод LabCMS::i()->url([$params array, [$action string[, $type string[, $href string[, $redirect string[, $token boolean]]]]]])
который генерирует ссфлки на основе настроек, экранирует переменные и т.п.
Чтобы сгенерировать ссылку из шаблона, используется тег {url} с аналогичными параметрами:
{url action="..." var1="..." ...}
 
Можно использовать и собственную схему разбора url. Для этого надо создать класс на основе интерфейса /kernel/classes/Url.php и поместить его в каталог /kernel/classes/Url/