2016-12-23 26 views
0

我有TestController,它沒有它自己的模型。我在裏面使用了各種模型,其中包括Trunk Model。我有我的函數「call」,它想要使用Trunk Model中的「singlePckgCall」方法。直到這裏一切順利。函數使用不同類的方法比它應該

TestController

這種方法,我想要使用,使用另一種方法,放在下面 - 「callSingleNumber」。

enter image description here

然後停止,併發送了我一個錯誤頁:

未知方法 - 警予\基地\ UnknownMethodException

調用未知的方法: 前端\控制器\的TestController: :callSingleNumber()

我不知道爲什麼要c所有的TestController方法,而不是Trunk Model,就像我想要的那樣。結果,它沒有看到這樣的方法,因爲它存在於另一個類中。我試圖再次手動重寫這部分,但它沒有幫助。

回答

2

您正在靜態調用singlePckgCall,所以在singlePckgCall方法內$this實例不可用。

解決你的問題,你可以

1)靜態地singlePckgCall調用callSingleNumber

$action_id_array[$key] = self::callSingleNumber($numery[$i], TRUE); 

在行52

2)創建幹線類的一個實例,因此$這是可在singlePckgCall

$instance = new Trunk(); 
$instance->singlePckgCall($numery); 
+0

你應該ü靜態'而不是'自我'。參見[後期靜態綁定](http://php.net/manual/en/language.oop5.late-static-bindings.php) – topher

相關問題