如何使用Test DbAdapter获取Zend Framework Zend_Db::factory()的实例?
我有以下代码,但工厂标记在我的适配器盒上,并打破了文件路径。他们的测试适配器无法通过自己的工厂加载似乎有点讽刺。我在这里做错了什么?
$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_Loader::include_once(Zend/Test/Dbadapter.php): failed to open stream: No such file or directory
更新
上面的代码是直接复制和粘贴,适配器参数大小写正确:'DbAdapter'。这与文件大小写Zend_Test_DbAdapter匹配。
我将代码更改为手动实例化Zend_Test_DbAdapter
并自动加载而没有问题。
$db = new Zend_Test_DbAdapter;
print_r(get_class($db));
输出:
Zend_Test_DbAdapter
我仍然认为Zend_Db::factory()
方法使我的适配器字符大小写,上面是第一个字符,下面是其他字符。
答案 0 :(得分:0)
检查错字错误
if not 'adapter' => 'Dbadapter', to 'adapter' => 'DbAdapter',
Zend/Test/Dbadapter.php does not exits
Zend/Test/DbAdapter.php exits in library
OR
档案缺失
你必须在includePath中添加zend lib,或者如果它的zend项目将zend文件添加到库中
/应用 /图书馆 添加Zend文件(从http://framework.zend.com/download下载)