在看这些之前请确保你正确加载了PDO扩展。

作法是编辑php.ini
手动增加这两行(前面要没有分号;):
extension=php_pdo.dll
extension=php_pdo_mysql.dll
然后要把extension_dir
指向php_pdo.dll及php_pdo_mysql.dll所在目录,如
extension_dir = "C:\php5\ext"

OK,let's go..

index.php 网站首页,也是唯一入口

<?php
//...省略

$params = array ('host'     => '127.0.0.1',
                 'username' => 'root',
                 'password' => '123456',
                 'dbname'   => 'happycms');

$db = Zend_Db::factory('pdoMysql', $params);
Zend::register('db', $db);
?>

lib/App/Article.php

<?php
class App_Article {
        private $db;
        function App_Article() {
                $this->db = Zend::registry('db');
        }

        function listAll() {
                $result = $this->db->query('SELECT * FROM article');
                $rows = $result->fetchAll();

                Zend::dump($rows);
        }

        function listByCategory() {
        }

        //...省略

}

?>

ArticleController.php
class articleController extends Zend_Controller_Action  {
    private $view;
    private $article;

    function __construct() {               
        $this->view = Zend::registry('view');
        $this->article = new App_Article();       
    } 

    public function listAllAction() {
        $this->article->listAll();
        $this->view->title='View Articles';          
        echo $this->view->render(TPL_DIR.'/tplView.php');
    }

    function __call($action, $arguments)
    {       
        $this->_redirect('./');
        print_r($action);
        print_r($arguments);
    }
}
?>

访问 http://happycms/article/listall

得到以下输出:

array(1) {
  [0] => array(15) {
    ["articleid"] => string(1) "1"
    ["categoryid"] => string(1) "0"
    ["articletitle"] => string(4) "test"
    ["articlefromwhere"] => string(3) "sdf"
    ["articlekeywords"] => string(5) "sdfds"
    ["articledescription"] => string(4) "test"
    ["articlebody"] => string(9) "sffsdfsdf"
    ["authorname"] => string(8) "haohappy"
    ["authoremail"] => string(11) "s...@df.com"
    ["issticky"] => string(1) "0"
    ["isrecommanded"] => string(1) "0"
    ["includeattachment"] => string(1) "0"
    ["addtime"] => string(19) "0000-00-00 00:00:00"
    ["lastedittime"] => string(19) "0000-00-00 00:00:00"
    ["checktime"] => string(19) "0000-00-00 00:00:00"
  }