Советы по написанию / проектированию URL-маршрутизатора в PHP с использованием ООП - PullRequest
1 голос
/ 15 января 2010

Мне нравится элегантность Zend_Controller_Router_Rewrite и различные классы маршрутов, которые он использует.

Я хотел бы написать очень похожую систему маршрутизации в качестве отдельного компонента, чтобы я мог преобразовывать URL-адреса в набор параметров и снова собирать их. Идея состоит в том, чтобы использовать их для выбора, скажем, обработчика нормализации URL для каждого пути.

Я подумал о расширении реальных классов Zend Controller Route для создания своих собственных. Но эти классы кажутся очень глубоко маршрутизированными (если вы извините за каламбур) на доменном языке Zend MVC.

Знаете ли вы об отдельном пакете маршрутизации / наборе классов, доступных для использования в моем проекте?

Является ли zend router примером какого-либо конкретного шаблона проектирования, который я мог бы использовать, если бы написал свой собственный?

Есть ли у вас какие-либо советы по написанию URI-маршрутизатора?

Ответы [ 2 ]

1 голос
/ 29 октября 2010

Проверьте URL-маршрутизатор в Alloy PHP Framework:
http://alloyframework.org/manual/url-router/

Существует определенный заголовок об использовании его вне фреймворка в качестве автономной библиотеки, и ИМХО, это гораздо более элегантное решение, чем Zend_Controller_Router_Rewrite.

0 голосов
/ 15 января 2010

Надеюсь, я не неправильно понял ваш вопрос.

Я не использовал Zend_Controller_Router, но codeigniter и routerphp разбирают параметр url с помощью '/' и сопоставляют их с различными контроллерами и методами, что, я думаю, не сложно реализовать с нуля.

...