我試圖創建一個基於註釋的路由系統(類似於Recess Framework)。PHP路由系統
<?php
class MyController extends ActionController {
/** !Route GET /hello/$firstname/$lastname **/
public function helloAction($firstname, $lastname) {
echo('Hello '.$firstname.' '.$lastname);
}
}
?>
如果我去http://domain.com/hello/James/Bond我得到
Hello James Bond
所以我有兩個問題:
1)這是個好主意嗎?優點和缺點vs集中式路由系統(如Zend Framework)。也許我沒有看到我後來用這種路由技術產生的問題。
2)如何檢查重複的路線,如果有正則表達式的路線
<?php
class MyController extends ActionController {
/**
*!Route GET /test/$id = {
* id: [a-z0-9]
*}
**/
public function testAction($id) {
echo($id);
}
/**
*!Route GET /test/$id = {
* id: [0-9a-z]
*}
**/
public function otherTestAction($id) {
echo($id);
}
}
?>
我得到兩條路線:/test/[a-z0-9]/
和/test/[0-9a-z]/
,如果我去http://domain.com/test/a12/
兩條路線都是有效的。
謝謝:)
+1爲有趣的想法。我會考慮它。謝謝 – Tomas