2015-05-20 38 views
1

我一直在尋找答案,但還沒有真正找到真正的解決方案。我最近了解了一些Laravel的,並且它有這種類型的路由:路由控制器中的呼叫功能

Route::get('home', '[email protected]'); 

截至目前,我已經離開Laravel和我使用CodeIgniter擺弄。

路由我這裏是:

$route['home'] = "controllername"; 

和索引功能被調用。我如何提及我需要調用的函數,就像在Laravel中一樣?

+0

我不知道laravel但我認爲這是你想要的'$ route ['home'] =「controllername/functionname」' –

+0

我試過了,它工作。真的很糟糕的結構,我想,當控制器在一個文件夾中,它可能會令人困惑'$ route ['home'] =「文件夾名稱/控制器名稱/函數名稱」' – Kishor

+0

@ShaifulIslam - 請你張貼它作爲答案,讓我可以將其標記爲正確答案? – Kishor

回答

1

我覺得這是你想要

$route['home'] = "controllername/functionname" 

您可以在codeigniter 2 docs

笨-3發現很多例子的什麼也支持回調函數。你可以看到細節here

1

是的,你可以調用使用路由控制器中的任何功能,這樣

$route['home'] = "YourController/Yourfunction" 

當你打http://example.com/home然後將您重定向到「yourFunction中」

1

如果你想傳遞參數對於功能

$route['home/(any:)'] = "yourcontroller/yourfunction" 
$route['home/(any:)/num:'] = "yourController/yourfunction/$1/$2" 

(任何:) - 字符串,民:對數字PARAMS,你也可以使用正則表達式

您可以重新排序由$ 1 $ 2等PARAMS ,:

$route['home/(any:)/num:'] = "yourcontroller/yourfunction/$2/$1" 

鏈接看起來likie這樣的:

home/blog/3 

和功能將被調用:yourfunction(3,'blog');