2016-04-25 342 views
3

我正在製作一個控制器,它調用了一個類中的不同方法,並且我想盡可能通用。目前,我有這樣的代碼:傳遞一個數組作爲參數

//More code up, just showing the important code part 
$geo = new Geolocation(); 
$res = $geo->{$method}(...$params); 

echo json_encode($res); 

我要的是傳遞一個數組作爲參數傳遞給我的Geolocation類。

我把一個想法從一個線程:Passing an Array as Arguments, not an Array, in PHP

的問題是,「圖示操作」 ...工作不適合我,可能是因爲它不是一個功能。有沒有相關的解決方案?

PHP 5.6.20

+3

「不工作」是不是一個有用的聲明。請更具體一些。 –

+0

順便說一句,對我有用https://3v4l.org/i9n28 –

+0

@JonStirling:猜我應該等待_「Not working」的答案_ – AbraCadaver

回答

2

爲你鏈接顯示call_user_func_array()問題的第一個答案,所以用一個對象的方法做:

$res = call_user_func_array(array($geo, $method), $params); 
+0

哦問題,謝謝,我只是超越了這個答案。 – jonilgz