首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

Zend Framework 連接資料庫與 CRUD 完整實作範例(含原始碼下載)

     編輯:PHP 相關知識

Zend Framework 連接資料庫與 CRUD 完整實作範例(含原始碼下載)

本文以 message 表(id, title, content)為例,示範 Zend Framework 專案中資料庫連線設定、Model 定義、前端控制器整合與視圖渲染的完整 MVC 流程。

專案結構關鍵檔案

  1. application/config/config.ini:資料庫連線參數(adapter, host, username, password, dbname)。
  2. application/models/Message.php:繼承 Zend_Db_Table,設定 $_name、$_primary。
  3. public/index.php:載入配置、建立 Adapter、註冊預設 Adapter 至 Registry。
  4. application/controllers/IndexController.php:實作 index(列表)、add(新增)、edit(修改)、del(刪除)四個 Action。
  5. application/views/scripts/:對應 index.phtml、add.phtml、edit.phtml 視圖模板。

核心程式碼片段

入口檔資料庫初始化

$config = new Zend_Config_Ini('./application/config/config.ini', null, true);
Zend_Registry::set('config', $config);
$dbAdapter = Zend_Db::factory($config->general->db->adapter, $config->general->db->config->toArray());
$dbAdapter->query('SET NAMES UTF8');
Zend_Db_Table::setDefaultAdapter($dbAdapter);
Zend_Registry::set('dbAdapter', $dbAdapter);

控制器 CRUD 範例

// 新增
public function addAction() {
    if (strtolower($_SERVER['REQUEST_METHOD']) == 'post') {
        $filter = new Zend_Filter_StripTags();
        $data = array(
            'title'   => $filter->filter($this->_request->getPost('title')),
            'content' => $filter->filter($this->_request->getPost('content'))
        );
        $message = new Message();
        $message->insert($data);
        echo '新增成功!<a href="'. $this->view->baseUrl .'/index/index/">返回</a>';
    } else {
        echo $this->view->render('add.phtml');
    }
}
// 修改、刪除邏輯類似,使用 $table->update($set, $where) 與 $table->delete($where)

完整原始碼下載

點擊此處本站下載完整實例代碼

此範例展示了 Zend Framework 1.x 時代經典的 MVC 實作模式,雖然版本較舊,但架構思想仍具參考價值。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved