Zend_Db::factory()을 사용하여 젠드 프레임 워크 Test DbAdapter을 얻고 인스턴스를 얻을 수 있습니까?Zend_Db :: factory()에서 Zend_Test_DbAdapter로드
다음 코드는 있지만 어댑터 사례의 팩시밀리 우표가 있으며 파일 경로가 끊어집니다. 그들의 테스트 어댑터가 그들 자신의 공장에서로드 될 수없는 것은 약간 아이러니하게 보인다. 여기서 내가 뭘 잘못하고 있니? 'DbAdapter'
Zend_Loader::include_once(Zend/Test/Dbadapter.php): failed to open stream: No such file or directory
은 위의 코드는 직접 복사 및 붙여 넣기, 어댑터 매개 변수의 경우 올바른입니다
업데이트 :
$config = new Zend_Config(
array(
'database' => array(
'adapter' => 'DbAdapter',
'params' => array(
'adapterNamespace' => 'Zend_Test',
'host' => 'localhost',
'dbname' => 'mydb',
'username' => 'not',
'password' => 'needed'
)
)
)
);
$db = Zend_Db::factory($config->database);
나는 다음과 같은 오류가 발생합니다. 이것은 파일 케이스 Zend_Test_DbAdapter와 일치합니다.
Zend_Test_DbAdapter
을 수동으로 인스턴스화하기 위해 코드를 변경 했으므로 문제없이 자동으로로드됩니다.
$db = new Zend_Test_DbAdapter;
print_r(get_class($db));
출력 :
Zend_Test_DbAdapter
나는 여전히 Zend_Db::factory()
방법은 내 어댑터 문자의 경우, 상단 케이스의 첫 번째 문자, 하부 케이싱 나머지 nerfing 믿습니다.
나는 이것을 작동시킬 수 없었다. Zend의 어댑터가 지연 연결을 사용하기 때문에 테스트를 위해'pdo_mysql' 어댑터를 사용할 수 있었고'Zend_Db_Adapter_Abstract'의 인스턴스가 내 factory 메소드에서 반환되었다고 주장했습니다. 이것은 내 필요에 충분했지만, Zend_Db :: factory()를 통해'Zend_Test_DbAdapter'의 인스턴스를 얻을 수 없다는 것을 알 수 있습니다. –