parser

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

 

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

Ответ

Sumo 17.11.2015 16:47

/section/heading/entry и все варианты разбирается несложным регулярным выражением на подобие ^/(.+?)(?:/(.+?)(?:/(.+?))?)?$. Получаете три переменные по которым ищете обработчик (функцию). Очевидно, что их всего три. Функции передаете параметры, полученные в регулярном выражении и в ней уже достаете из базы все что нужно. Если данных нет, то вы это явно увидите в обраотчике и выдате 404 ошибку. ?foo=bar проверите и обработаете в обработчике через form.

Все это делается в любом веб-фреймворке много лет и вариантов реализации не так уж и много. Если вам сложно посмотреть как это реализовано в PF, то глянтье на Ruby on Rails. :)