第 01 章|PHP 與環境安裝
認識 PHP、伺服器端概念,以及如何建立本機執行環境。
安裝 XAMPP、Laragon 或 MAMP,啟動 Apache 與 PHP 後,你就能讓瀏覽器透過 localhost 執行 PHP 程式。
這一頁不是只有課綱,而是把每一章都展開成可閱讀的教學說明、重點摘要、範例程式碼與學習提醒。你現在可以把這個專案當成更完整的繁體中文 PHP 教學網站原型。
新手:1~10 → 中階:11~18 → 進階:19~24。
每讀完一章,可再打開 Try Editor 做對應練習。
從入門、實作到進階延伸一次整理
認識 PHP、伺服器端概念,以及如何建立本機執行環境。
安裝 XAMPP、Laragon 或 MAMP,啟動 Apache 與 PHP 後,你就能讓瀏覽器透過 localhost 執行 PHP 程式。
了解 PHP 標籤、註解、echo、print 與 HTML 混寫。
PHP 透過 標籤包住程式碼,最常見的輸出方式是 echo。你也可以把 HTML 與 PHP 穿插撰寫,讓頁面動態生成內容。
學習變數宣告與常見型別。
PHP 變數以 $ 開頭,常見型別包括 string、int、float、bool 與 array。由於 PHP 是弱型別語言,所以更要注意命名與資料驗證。
掌握字串串接、比較與數學運算。
你可以用 . 來串接字串,用 ==、===、>=、<= 做比較,用 +、-、*、/ 做數值計算。
使用 if、elseif、else、switch 來控制流程。
條件判斷可讓程式根據不同資料產生不同輸出,例如會員等級、分數評斷或訂單狀態。
= 80) {
echo "通過";
} else {
echo "未通過";
}
?>
重複處理多筆資料。
for 適合固定次數,while 適合條件式重複,foreach 最適合走訪陣列。
";
}
?>
把邏輯封裝成可重複使用的 function。
函式可以接收參數,也能回傳結果。這讓你的程式更清楚、更容易維護。
管理清單型資料。
PHP 陣列可分為索引陣列、關聯陣列與多維陣列,非常適合處理商品、會員、設定清單。
"Amy", "role" => "admin"];
echo $user["name"];
?>
認識 $_GET、$_POST、$_SERVER 等內建變數。
超全域變數可以在程式任何地方使用,是 PHP 與瀏覽器、伺服器互動的關鍵。
接收使用者輸入並進行基本安全檢查。
表單處理是 PHP 最常見的用途之一。接收表單後,必須先檢查空值、格式、長度,再做安全輸出。
管理登入狀態與使用者偏好。
Session 資料儲存在伺服器端,適合登入狀態;Cookie 儲存在瀏覽器端,適合保存語系、主題等偏好設定。
拆分重複版型與共用程式。
把 header、footer、sidebar 拆出去後,可大幅提高網站維護性,也更符合正式專案結構。
使用 PHP 存取文字或設定檔。
fopen、fwrite、fread 可讓你操作檔案,常見於日誌、快取、簡易資料保存。
製作圖片或文件上傳功能。
檔案上傳很常用於會員頭像、附件與作品上傳。實務上要驗證副檔名、大小、MIME 與儲存路徑。
處理顯示時間、比較日期與時區。
date 與 strtotime 能幫你快速處理格式化時間,記得先設定正確時區。
學會用 try/catch 管理程式錯誤。
例外處理能避免整個程式直接中斷,也讓你更容易記錄錯誤與顯示友善訊息。
getMessage();
}
?>
使用 PDO 連接資料庫。
PDO 提供一致的資料庫操作介面,也支援預備語句與例外處理,是現代 PHP 的常用做法。
建立新增、讀取、修改、刪除功能。
CRUD 是幾乎所有管理後台的基本功能,例如文章管理、產品管理與會員管理。
prepare("INSERT INTO posts(title) VALUES(:title)");
$stmt->execute([":title" => "新文章"]);
?>
建立帳號登入與登出流程。
登入功能通常會結合資料庫、Session 與密碼驗證,是非常代表性的 PHP 練習專案。
防止 SQL Injection、XSS 與弱密碼問題。
安全不是最後再補,而是從一開始就要納入。輸入驗證、輸出轉義與預備語句是基本功。
讓 PHP 成為資料 API 伺服器。
PHP 不只能產生 HTML,也常被拿來輸出 JSON 給前端框架、手機 App 或第三方系統。
"ok"]);
?>
使用 class 與 object 管理程式結構。
物件導向能讓大型專案更容易管理,尤其在框架、模組與商業邏輯拆分上很重要。
name;
?>
學習現代 PHP 專案管理方式。
當專案變大後,命名空間可以避免類別衝突,Composer 則負責自動載入與第三方套件管理。
從基礎 PHP 走向正式框架。
當你理解前面章節後,就能更容易理解 MVC、Router、Controller、View 與 Model 的分工,並進入 Laravel 等框架開發。