使用Zend Framework列出数据库

时间:2011-08-06 15:18:26

标签: database zend-framework zend-db

是否可以使用Zend_Db或ZF中的任何其他组件列出数据库?

2 个答案:

答案 0 :(得分:4)

没有Zend_Db->showDatabases()命令,但您可以执行查询'SHOW DATABASES'(假设为mysql)并循环显示结果。

答案 1 :(得分:0)

我假设您使用multiDb并且想要在您的应用程序中连接的所有数据库的列表。检测服务器/网络上的数据库或未包含在应用程序中的数据库不应该使用ZF。

要使所有数据库当前与multiDb连接,您可以在控制器中使用以下内容

$bootstrap = $this->getInvokeArg('bootstrap');
$resource = $bootstrap->getPluginResource('multidb');

$resource instanceof Zend_Application_Resource_Multidb;
$options = $resource->getOptions();
// getOptions is a little misleading because it actually is an array with all your db configs

请注意Zend_Db_Table的文档提到注册表存储其他数据库,这是另一种选择,而不是用multiDb覆盖