방법 - 매우 간단합니다 ->추가 사용자 정의 클래스/테이블에 일부 CSV 파일의로드 것을 내가 심포니 1.4에서 작업을 만든
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