2
在我的codeigniter控制器中,我只有帶可選參數的索引函數。如果參數存在,我加載一個視圖,否則我加載另一個。我用這個功能_remap:重映射帶可選參數的codeigniter索引方法
function _remap($method){
$param_offset = 2;
// Default to index
if (! method_exists($this, $method))
{
// We need one more param
$param_offset = 1;
$method = 'index';
}
// Since all we get is $method, load up everything else in the URI
$params = array_slice($this->uri->rsegment_array(), $param_offset);
// Call the determined method with all params
call_user_func_array(array($this, $method), $params);
}
的問題是,當我在索引功能檢查參數它總是值等於0,其爲我設置爲默認值。
不,它不起作用,因爲方法包含可選參數和$ params的名稱爲空。另外如果我設置$ params [] = $方法它不起作用。 – pindol
您能否提供您想要實現的路由行爲的幾個示例?例如'controller/test_method/123 ==> controller-> index('test_method',123)' – sepehr
是的。我可以做2個例子:一個沒有參數:domain.com/ci_folder/projects ==> projects-> index(沒有參數),另一個有一個arg是domain.com/ci_folder/projects/project-name ==>項目 - >索引(項目名稱) – pindol