程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> yaf路由配置規則

yaf路由配置規則

編輯:關於PHP編程

使用框架的默認路由來訪問的時候,會遇到一些困擾,這部分無法查看源代碼,只能通過猜測來分析。

如果項目有多個模塊,顯然使用yaf的默認的靜態路由是無法滿足需求的。

yaf默認的配置是著這樣的:

application.baseUri=”/======Index

 

依次說明一下作用

application.baseUri=”/” 這個是說明我們的domain後面就是要解析的內容,如果我們的application是通過文件夾a訪問的,baseUri就是/a 所以這個baseuri的目的就是表示出哪些部分是需要路由來處理的,哪些是真是的路徑。

默認的module是 Index,

application.dispatcher.defaultModule=Index

這一句經過測試發現修改是無效的,也就是說無法通過配置來修改默認的module,

application.dispatcher.defaultController=Index

application.dispatcher.defaultAction=index

即默認的 controller和默認的action相應的都是可以指派的。

再有就是為路由添加模塊,在新創建模塊的時候要將添加上的模塊通知給路由,這樣路由才能夠在request請求新模塊時該如何做

 

application.modules=Index用的是這一句,如果想添加新模塊 Myoo,則要在Index後面寫上,Myoo()。

變成 application.modules=Index,Myoo



 

原來用的框架的路由基本上都是默認模塊可以改而默認的controller和action不能改都是寫死的index

這種情況的好處是每個模塊都有指定的controller和action,如果要訪問 myoo模塊的 index控制器indexaction的話,只需要寫一個module名myoo就可以了。

現在yaf則不可以。默認的mudule是寫死的,而默認的controller和action是給默認的module用的,現在想訪問  myoo/index/index/的話,只能寫全,而不能只寫myoo,只寫myoo沒有controller和action,路由還是不知道最終的目的地是哪裡,就不會再從module中找了,myoo就被解析成默認的模塊的一個controller了,然後拋出一個404錯誤,

這個都沒有什麼問題,夠用了。

但是我覺得默認模塊不可更改這是不是一個bug,因為如果不能改為什麼要做上這個配置項呢。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved