我有一個生成單例類的類。 (注意,這是爲這個問題的目的過於簡化的代碼,例如,它不檢查的文件路徑存在)使用參數在單件工廠中實例化類
class Singleton
{
public function Load($classname, $params)
{
$filepath = 'classes/'.$classname.'.php';
require_once($filepath);
return $classname();
}
}
現在說,我想傳遞的可改變參數的數組大小與正在創建的類的構造函數相同。做這個的最好方式是什麼?我設想了一些沿着call_user_func_array
但是對於類的東西?
你使用Singleton而不僅僅是一個靜態方法的任何原因? – Jacob 2011-03-28 04:16:33
您可能想了解一下[PHP的自動加載功能](http://us2.php.net/manual/en/function.spl-autoload-register.php),它複製了您在此嘗試執行的操作。 – Charles 2011-03-28 04:23:06
@jacob,因爲傳遞給類的參數可能會根據具體情況而變化。例如,一個被加載的類是一個MySqlConnection類,它具有傳遞給構造函數的連接細節。 – Chris 2011-03-28 04:47:33