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

PHP 框架核心概念深度解析(一):LAMP、OOP、MVC、CRUD、單一入口、ORM

     編輯:PHP 相關知識

LAMP:經典開源Web堆疊

LAMP = Linux + Apache + MySQL + PHP/Perl/Python。這四大開源組件構成最普及的 Web 開發平台,特點:

  • 零授權成本,社群支援龐大
  • 組件間相容性經年累月優化,幾乎所有 Linux 發行版預裝
  • 支撐全球 70%+ 網站流量,與 J2EE、.NET 形成三足鼎立
  • Windows 環境對應 WAMP(如 XAMPP、WampServer)

OOP:面向對象程式設計三大支柱

特性核心內涵效益
封裝隱藏內部實作,透過介面互動降低耦合、防止誤用、易維護
繼承子類復用/擴展父類邏輯程式碼復用、結構清晰、多態基礎
多態同一介面對不同物件有不同行為彈性擴充、符合開放封閉原則

PHP 5 完整實作以上特性,並新增介面、抽象類、最終類/方法、魔術方法、型別提示等企業級特性。

MVC:關注點分離架構模式

Model(模型)

  • 封裝業務邏輯與資料存取
  • 回傳格式中立資料(陣列/物件)
  • 單一職責:一個模型對應一個業務實體

View(視圖)

  • 負責呈現:HTML、JSON、XML、PDF...
  • 不含業務邏輯,僅做資料綁定與顯示
  • 可對應多種輸出格式(響應式/AMP/API)

Controller(控制器)

  • 接收請求、協調模型與視圖
  • 不直接輸出、不處理資料細節
  • 薄控制器原則:業務邏輯下沉至 Service/模型層

流程:請求 → 控制器 → 模型處理 → 回傳資料 → 控制器選視圖 → 渲染輸出

CRUD:資料操作四大原子操作

  • Create(新增):`INSERT` / `add()` / `save()`
  • Read(讀取):`SELECT` / `find()` / `select()`
  • Update(更新):`UPDATE` / `save()` / `update()`
  • Delete(刪除):`DELETE` / `delete()` / `destroy()`

框架通常封裝為 Model 方法,ThinkPHP 用 `add/save/select/delete`,Laravel Eloquent 用 `create/find/save/delete`。

單一入口:統一請求分發

所有 HTTP 請求導向單一 `index.php`(透過 Nginx/Apache Rewrite),優點:

  • 集中初始化(自動載入、配置、Session、權限)
  • 統一異常處理、日誌、效能監控
  • URL 美觀化(`/user/profile` 而非 `user.php?act=profile`)
  • 不會造成效能瓶頸(PHP-FPM 工作者進程池化處理)

ORM:物件關聯映射橋樑

解決 物件導向(記憶體) 與 關聯式資料庫(磁碟) 的阻抗失配:

  • 物件有繼承、多態、引用;資料表只有外鍵、連接
  • ORM 以中介軟體形式,自動映射類↔表、屬性↔欄位、關聯↔JOIN
  • 主流實作:Doctrine (Data Mapper)、Eloquent (Active Record)、Propel

結語

掌握這六大核心概念,是理解任何 PHP 框架(Laravel、Symfony、ThinkPHP、CodeIgniter...)設計哲學與原始碼的鑰匙。下一篇將實戰剖析路由分發、依賴注入、中介軟體管線等進階機制。

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