2014-03-12 38 views
0

他們!如何定義一個具有多個參數的控制器,但僅在CodeIgniter中發送一個控制器?

我創造下一個控制器

function add($action,$data){ 

} 

至極給我的功能下一個網址:

controller/add/proyect/0

但這是一個多用途控制器。

所以,我需要調用它像這樣:

controller/add/proyect

我不想發送數據,我只想補充的proyect。

當我這樣做,編譯器將我的錯誤:

Missing argument 1 for add()

這是我的嘗試:

function add($action,$data=null){ 

} 

function add($action,$data=false){ 

} 

但仍然沒有工作。

任何想法?

+0

「*它不工作*」沒有用。請解釋一下,如果你收到一條錯誤信息(如果是,哪一條)或者結果與你的期望有差異(如果是這樣,如何)。 –

+0

PHP函數允許可選參數,通過說'$ data = null'你默認將$ data設置爲null,同時解釋你的意思是多用途函數 –

+0

** DEFINITE **重複[使用PHP函數但錯過了參數](http://stackoverflow.com/questions/22015895/using-a-php-function-but-missing-out-the-parameters) – MonkeyZeus

回答

0

您設置數據默認值的兩個示例應該工作正常。您無需爲所有參數設置默認值。

您的問題可能在於函數本身。如果$ data等於某個值,您可能會將該函數設置爲僅返回一個值。你有沒有在函數的任何行代碼說

if(!$data){ 

也許

if(empty($data)){ 

我們一定要看到整個功能之前,我們可以給你一個答案,爲什麼它不工作。

相關問題