没有Zend Framework的Zend_Db

use*_*791 6 php zend-framework zend-db

我想在没有Zend_Framework的情况下使用Zend_Db.我希望将Zend_Db合并到我现有的网站上,而不是使用Zend Framework制作的.可以像这样使用Zend_Db吗?你能推荐一个好的教程或示例如何做好吗?

Dav*_*aub 10

在某种程度上,这取决于您使用的Web框架.但是,一般来说,Zend_Db文档在这方面非常清楚.

在引导程序中创建适配器实例.举个例子:

$db = Zend_Db::factory('Pdo_Mysql', array(
    'host'     => '127.0.0.1',
    'username' => 'webuser',
    'password' => 'xxxxxxxx',
    'dbname'   => 'test'
));
Run Code Online (Sandbox Code Playgroud)

如果您打算使用Zend_Db_Table,那么您可以将其设为默认适配器:

Zend_Db_Table::setDefaultAdapter($db);
Run Code Online (Sandbox Code Playgroud)

在任何情况下,将此适配器保存在可以访问它的位置是有帮助的.例如:

Zend_Registry::set('db', $db);
Run Code Online (Sandbox Code Playgroud)

然后在你的下游代码,使用该适配器创建查询select(),insert(),update(),delete(),等:

$db = Zend_Registry::get('db');
$select = $db->select()
    ->from('posts')
    ->where('cat_id = ?', $catId)
    ->order('date_posted DESC')
    ->limit(5);
$rows = $db->fetchAll($select);
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.干杯!