2017-09-01 106 views
2

在我的Phpdoc中,我有這樣的路線設置。如何編寫正確的路由正則表達式?

* @route /v1/posts/<type:(news|article|release|about)?> 

如何使它在「帖子」之後的斜槓只有在類型通過時才被插入。

+1

嘗試'/ V1 /職位(:/ <類型:(新聞|文章|發佈|約)>?)?' –

+0

非常感謝你:) –

+0

高興它爲你工作。請考慮通過點擊左側的✓接受答案(請參閱[如何接受SO答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work))和 - 接受後 - upvoting如果我的回答證明對你有幫助(參見[如何在堆棧溢出?](http://meta.stackexchange.com/questions/173399/how-to-upvote-on-stack-overflow)) 。 –

回答

1

您可以製作type交替組義務和一個可選的非捕獲組包裹/type..部分:

/v1/posts(?:/<type:(news|article|release|about)>)? 

現在,

  • /v1/posts - 相匹配的文本串
  • (?:/<type:(news|article|release|about)>)? - 匹配1次或0次出現(即該部分可能丟失)
    • / - 斜線
    • <type:(news|article|release|about)> - <type:,那麼任何捕獲組內的備選方案,然後>