我在Symfony的1.4創建的任務載荷在一些CSV文件導入表 - 很簡單 - >添加自定義的類/方法
protected function execute($arguments = array(), $options = array())
{
$databaseManager = new sfDatabaseManager($this->configuration);
$connection = $databaseManager->getDatabase($options['connection'])->getConnection();
......
$query = "LOAD DATA INFILE '" . $cdrfile . "'
INTO TABLE ....
etc
$connection->execute($query);
}
但我想重用的代碼別的地方本節 - 所以我創建了一個新的PHP類,並創建了一個名爲loadDataFromCSV
的新靜態方法。
我把所有的代碼到該方法然後叫class::loadDataFromCSV
...
這給了我一些問題 - 首先在方法$this
關鍵字不作爲類它不是一個對象有效(即不實例化) - 所以我可以實例化該類,然後調用方法class->loadDataFromCSV
- 下一個問題是在第一行上的$this->configuration
- 是否必須將配置傳遞給該方法才能使其工作?
什麼是最簡單的方法來創建一個簡單的方法來運行一段簡單的代碼 - 而不必傳遞大量變量。
我會看看依賴注入 - 謝謝。 – ManseUK