[CodeIgniter] list 不能當 function name 的問題
2013 Apr 27 未分類
這個問題其實很簡單
因為 list 這個字是 php 的關鍵字
所以當然不能拿來當 function name
因為 CodeIgniter 的 controller function name 會被拿來當做 url 的一部分
例如
http://example.com/product/list/page3/
product 會是 controller 的 class name
而 list 就會是 function name
可是如同文章標題
list 這個字是不能當 function name 的
但是我又不想把 function name 改成其他字
怎麼辦呢
這時候就要用 CI 強大的 Route 功能囉
此時編輯 config/routes.php
加入這行
$route['product/list/(:any)'] = "product/enum/$1";
這行的作用是 把網址
product/list/xxxxx
都轉成
product/enum/xxxxx
這樣一來
所有 url 叫做 product/list 的要求
都會轉到 product/enum
至於 enum 是我自己取的 function name
你可以自己換成你自己想要的 function name
當然比較高級的方法
也可以去改 .htaccess
但是比較複雜
如果不想搞懂 .htaccess 的話
(我一直都不想搞懂啊阿阿阿~~)
用 CI 的 Route 功能是個好方法
0則留言