parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Не туда

G_Z 16.12.2015 15:24

Для простого случая, с которого вам стоит начать, совершенно не нужно делать подобный разбор.
Его в таком виде вообще не нужно делать.

Ваша задача по адресу найти метод-обработчик.
Оно может разбирать до 5 уровней вложенности, плюс дополнительные 10 get-запросов и ссылку вида #some, например:
/my/people/know/about/hood?police=suck&cocks=and&homies=give&fuck=and&shit=on&the=wall&garlem=shake&google=hoougle&yandex=huyandex&bmw=is#pussy
При этом вложенность и параметры могут быть не все, т.е. /my/people/know и все, будет работать, подумал Я.
Вам нужно разрезать $request:uri по слэшам.
Это даст таблицу путей.

GET-параметры разберёт декодирует, и перекодирует в случае необходимости, класс $form, делать этого вручную не нужно.
Абсолютно бессмысленно пытаться получить указатель фрагмента (#…) — он не отправляется на сервер при запросах и серверным скриптам бесполезен.

Разбор чего-либо регулярными выражениями потребуется в случае если необходимо привести фрагмент адреса к набору параметров:
/news/2015-05-10/
->
slug news
year 2015
month 05
day 10
И потребуется если возникнет необходимость обратной маршрутизации — генерации URL по известной маске и имеющимся данным.