我工作的一個PHP MVC路由系統上,我需要我的路由器能夠得到URL的各個部分,並在這個例子中相應的映射像:PHP正則表達式複雜的匹配
url = controller/method/parameters/another/something/page/7
應該映射到:
controller = controller, method = method, parameters = parameters/another/something, page = 7
目前我只能用這個正則表達式匹配
controller/method/parameter/page/7
:
{controller}/{method}/{parameters:[a-z0-9-]+}/page/{page:\d+}
換算成這種模式:
/^(?P<controller>[a-z-]+)\/(?P<method>[a-z-]+)\/(?P<parameters>[a-z0-9-]+)\/page\/(?P<page>\d+)$/
我使用名爲捕捉得到的部分。我需要使用正則表達式來獲得上述結果的幫助。
到底爲什麼你需要做到這一點在PHP?如果您使用它來重寫網址,您最好使用[.htaccess](/ documentation/.htaccess/topics /)。 –