2011-11-08 53 views
1

應該如何看的地址,並在框架的參數?地址和參數框架

你寫:

site.com/controller/method?arg=1&arg=2 

這是件好事?

做得更好記錄:

site.com/controller/method/arg/1/arg2/2 

我想問例如,由於是中間框架

+2

你問一個具體的框架,如何處理它的網址,或者是你實現一個新的框架,並要求哪種方式更好? – lanzz

回答

0

好,一般框架有一個像

 
somesite.com/controllerName/actionName/arg1/arg2/.../argN 

這是一個更好的URL模式方式

+0

確定但我不能在$ _GET中獲取參數 – zyeu

1

的框架,我最有經驗的有(笨)主要ü SES這種方法,稱其爲「URL分割」

site.com/index.php/controller/method/arg/1/arg2/2 

的URL通過$ _SERVER陣列取回,然後分解(「/」)和主類(其用作入口點)分配不同的組塊到競爭處理器(第一段到控制器,第二段到一個方法,其餘的作爲參數數組;您可以使用function_get_args()有,例如,對它們進行檢索)

另一種常見的選項,更容易實現,使用查詢字符串

site.com/?c=controller&m=method&arg1=arg1&arg2=arg2&arg3=2 

您可以輕鬆地與$ _GET數組檢索和在.htaccess中重寫爲「漂亮」。這是相當的URL如何在那裏爲:)

1

其實你這不應該發揮作用。然而,一個框架可以做到這一點,它應該爲您提供對控制器和參數的訪問。

第一個例子

site.com/controller/method?arg=1&arg=2 

有可以更好的命令controller/method區分的利益和它的參數arg=1&arg=2所以這看起來更親到這裏HTTP協議。

有人會告訴你,這些URL不是SEO友好的,但我們看到越來越多的搜索引擎在這裏使用語義,所以完整的故事是這兩個變種都是SEO友好的,只有當你混合兩個概念,你將獲得最大的SEO控制權。

在任何情況下應的框架允許多種方式使你能夠利用你認爲是最有用的,以您的需求。這通常稱爲路由。