<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>А как работать с классом URL?  - LabCMS</title>
    <link>https://labcms.ru/discussion-theme.29/</link>
    <atom:link href="https://labcms.ru/discussion-theme.29.xml" rel="self" type="application/rss+xml"/>
    <description>Тема в форуме LabCMS</description>
    <language>ru-ru</language>
    <pubDate>Thu, 11 Jun 2026 10:33:50 +0300</pubDate>
    <lastBuildDate>Thu, 11 Jun 2026 10:33:50 +0300</lastBuildDate>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>LabCMS Feeder</generator>
    <item>
      <title>Loki</title>
      <link>https://labcms.ru/discussion-theme.29/1/#p168</link>
      <description><![CDATA[Собственно, он вызывается почти в самом начале работы, так что распарсенные данные уже находятся в массиве $_GET. Соотвественно, в процессе работы парсить больше ничего не надо.<br />
Сейчас реализовано две схемы url:<br />
flex<br />
выглядит как /path/to/node-action.var1/var2/var3/.../varN.ext<br />
где<br />
/path/to/node - идентификатор узла в структуре сайта<br />
var1... - переменные<br />
ext - тип данных (можно подставить почти любой)<br />
если в конце подставить ?simevar=someval то это тоже будет корректно обрабатываться
<br />&#160;<br />
flat<br />
выглядит как /path/to/node.ext?action=xxx&amp;var1=xxx&amp;var2=...&amp;varN<br />
В принципе, тоже самое, но в более привычном виде.
<br />&#160;<br />
Чтобы не приходилось формировать все это руками, создан специальный метод LabCMS::i()-&gt;url([$params array, [$action string[, $type string[, $href string[, $redirect string[, $token boolean]]]]]])<br />
который генерирует ссфлки на основе настроек, экранирует переменные и т.п.<br />
Чтобы сгенерировать ссылку из шаблона, используется тег {url} с аналогичными параметрами:<br />
{url action="..." var1="..." ...}
<br />&#160;<br />
Можно использовать и собственную схему разбора url. Для этого надо создать класс на основе интерфейса /kernel/classes/Url.php и поместить его в каталог /kernel/classes/Url/]]></description>
      <pubDate>Fri, 18 Mar 2011 20:40:08 +0300</pubDate>
      <guid>https://labcms.ru/discussion-theme.29/1/#p168</guid>
    </item>
    <item>
      <title>random2</title>
      <link>https://labcms.ru/discussion-theme.29/1/#p167</link>
      <description><![CDATA[Собственно сабж.<br />
Нужно распарсить $_GET ]]></description>
      <pubDate>Fri, 18 Mar 2011 18:24:19 +0300</pubDate>
      <guid>https://labcms.ru/discussion-theme.29/1/#p167</guid>
    </item>
  </channel>
</rss>
