使用了很久的tp3,卻沒發現還有這么可玩性的功能.
官方文檔:要使用路由功能,前提是你的URL支持PATH_INFO(或者兼容URL模式也可以,采用普通URL模式的情況下不支持路由功能),並且在應用(或者模塊)配置文件中開啟路由
// 開啟路由 'URL_ROUTER_ON' => true
實際體驗:
1.如果項目區分版本,如 RESTFul Api 區分接口版本 v1,v2 則建議在應用下的 Common/Conf/config.php 內定義,因為如果在Api模塊內定義,如果版本定義在url的第一個.那么tp將會報錯提示 ::1 錯誤,
':version/user' => 'version/user/index', //獲取用戶列表
原因就是路由表達式 ‘:version/user’ 的第一個參數不支持使用動態變量
解決方法:把路由開啟在公共目錄下,然后定義路由表
'api/:version/user' => 'api/version/user/index', //獲取用戶列表
2.閉包路由定義之后會提示 不能序列化匿名函數的錯誤
解決辦法:不用,因為在官方git上面有用戶提問,官方並沒有進行解答.自己也沒有找到什么解決辦法.
總結:
thinkphp3.2.3對於新手上手框架是十分友好的,不僅有十分詳細的中文文檔以及大量的網友在網絡上分享的自己遇到的問題和解決辦法.
但是對於大型復雜的項目來說,tp3可能並不是很適合使用,不能達到快速開發的需求吧,另外tp官網也已經放棄了支持,.