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

CakePHP 框架入門指南:安裝配置與第一個 MVC 應用實作

     編輯:PHP 相關知識

CakePHP 是一個遵循慣例優於配置原則的 PHP MVC 框架,支援 PHP 4/5,擁有活躍社群與靈活的 MIT 授權。本文詳細記錄從下載、安裝、配置到建立第一個應用的完整流程。

環境需求

  • 基礎 PHP 程式設計知識
  • Apache + MySQL + PHP 開發環境(建議使用 XAMPP/WAMP/Laragon)
  • Apache 啟用 mod_rewrite 模組

CakePHP 核心特色

  • MVC 架構嚴格分離關注點
  • 內建 CRUD、Scaffolding、代碼生成器
  • 靈活的路由與自定義 URL
  • Validation、Security、Session、Email、ACL 等核心組件
  • AJAX、JS、HTML Form 視圖助手
  • 支援子目錄部署,幾乎無需修改 Apache 設定

安裝與配置步驟

1. 下載與部署

官網:cakephp.org(本文以 1.2.3.8166 版為例)

# 解壓至網站根目錄
/wwwRoot/First_App

# Apache DocumentRoot 指向 webroot
DocumentRoot "D:/PHP/wwwRoot/First_App/app/webroot"

2. 核心配置修改

app/config/core.php:

// 修改 Security.salt(約 40 字元隨機字串)
Configure::write('Security.salt', 'YourRandomStringHere40CharsLong!!');

app/config/database.php:

// 將 database.php.default 重命名為 database.php
class DATABASE_CONFIG {
    var $default = array(
        'driver' => 'mysql',
        'persistent' => false,
        'host' => 'localhost',
        'login' => 'root',
        'password' => '123',
        'database' => 'cake',
        'prefix' => '',
    );
}

app/tmp 目錄權限:確保可寫入(Linux: chmod -R 777 app/tmp)

3. Apache mod_rewrite 啟用

# httpd.conf
LoadModule rewrite_module modules/mod_rewrite.so  # 取消註解

# 允許 .htaccess 覆寫
<Directory "D:/PHP/wwwRoot/First_App/app/webroot">
    Options FollowSymLinks
    AllowOverride All
</Directory>

修改後重啟 Apache。

驗證安裝

瀏覽 https://localhost/,若 4 項檢查全顯示綠色(Security.salt、Database、tmp 可寫、mod_rewrite)即安裝成功。

建立第一個 MVC 應用:Items 管理

1. 建立資料表

CREATE TABLE items (
    id INT(11) UNSIGNED AUTO_INCREMENT,
    name VARCHAR(200),
    text VARCHAR(200),
    created TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    PRIMARY KEY (id)
);

INSERT INTO items (name, text) VALUES ('Item 1', 'Item 1 content');

2. Model: app/models/item.php

<?php
class Item extends AppModel {
    var $name = 'Item';
}
?>

3. Controller: app/controllers/items_controller.php

<?php
class ItemsController extends AppController {
    var $name = 'Items';
    var $scaffold;  // 啟用自動 scaffolding
}
?>

4. 瀏覽測試

存取 https://localhost/items 即可看到自動生成的列表、新增、編輯、刪除介面。

進階學習路徑建議

  1. 理解 AppModel、AppController 基類機制
  2. 學習關聯關係:hasMany、belongsTo、hasAndBelongsToMany
  3. 掌握 find() 進階查詢與 containable 行為
  4. 自定義 Validation 規則與錯誤訊息
  5. 使用 Bake 命令列工具快速生成代碼
  6. 探索 Components、Helpers、Behaviors 擴展機制

注意:CakePHP 1.x 已停止維護,新專案建議使用 CakePHP 4.x/5.x,核心 MVC 概念相同但 API 有重大變更。

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