PHP程序設計(慕課版 第3版)AIGC高效編程

楊松 胡楊箭 王艷

  • 出版商: 人民郵電
  • 出版日期: 2026-01-01
  • 售價: $479
  • 語言: 簡體中文
  • 頁數: 326
  • ISBN: 7115670471
  • ISBN-13: 9787115670472
  • 相關分類: PHP
  • 下單後立即進貨 (約4週~6週)

  • PHP程序設計(慕課版 第3版)AIGC高效編程-preview-1
PHP程序設計(慕課版 第3版)AIGC高效編程-preview-1

相關主題

商品描述

本書作為PHP程序設計的教程,系統、全面地介紹了有關PHP程序開發所涉及的各類知識。全書共16章,內容包括PHP入門與環境搭建、PHP開發基礎、運算符和表達式、流程控制語句、PHP數組、PHP與Web頁面交互、函數、字符串操作、MySQL數據庫、使用PHP操作MySQL數據庫、PHP會話控制、面向對象基礎、Ajax技術、ThinkPHP6框架、綜合案例——編程e學網、課程設計——九宮格抽獎。全書每章內容都與實例緊密結合,有助於學生理解知識、應用知識,達到學以致用的目的。 近年來,AIGC技術高速發展,成為各行各業高質量發展和生產效率提升的重要推動力。本書將AIGC技術融入理論學習、實例編寫、復雜系統開發等環節,幫助讀者提升編程效率。

本書既可以作為高等院校“PHP程序設計”課程的教材,又可以作為PHP愛好者,以及初、中級的PHP程序開發人員的參考書。

作者簡介

楊松,工學博士,副教授,碩士生導師。任大連外國語大學軟件學院副院長,長期從事計算機視覺、數據挖掘方面的教學與科研工作。遼寧省圖學學會理事,遼企聯人工智能專委會專家、大連市政務數字化專家、大連市科普專家,中國計算機學會(CCF)會員。主持和參與省級科研項目8項,發表SCI、EI論文10篇,出版學術專著2部,發表專利2項,撰寫計算機類教材10部。

目錄大綱

第1章 PHP入門與環境搭建 1

1.1 PHP概述 1

1.1.1 PHP是什麼 1

1.1.2 PHP語言的優勢 1

1.1.3 PHP的歷史版本 2

1.1.4 PHP8的新特性 3

1.2 PHP程序的工作流程 4

1.2.1 PHP服務器 4

1.2.2 PHP的工作流程 5

1.3 PHP開發環境構建 6

1.3.1 PHP開發環境的安裝 6

1.3.2 PHP服務器的啟動與停止 9

1.3.3 PHP開發環境的關鍵配置 10

1.4 PHP代碼編輯工具 12

1.4.1 常用主流工具介紹 12

1.4.2 PhpStorm的下載與安裝 13

1.5 第一個PHP程序 16

1.6 PhpStorm中引入AI工具 17

1.6.1 AI編程助手JetBrains AI Assistant 17

1.6.2 AI編程助手MarsCode 17

小 結 18

上機指導 18

習 題 18

第2章 PHP開發基礎 17

2.1 PHP基本語法 17

2.1.1 PHP標記符 17

2.1.2 PHP註釋 18

2.1.3 PHP語句和語句塊 19

2.2 PHP的數據類型 19

2.2.1 標量數據類型 19

實例:布爾值的應用

2.2.2 復合數據類型 23

實例:創建一個數組並輸出數組中的值

2.2.3 特殊數據類型 24

2.2.4 檢測數據類型 24

實例:檢測相應的數據類型

2.3 PHP數據的輸出 25

2.3.1 print和echo 25

2.3.2 輸出運算符“” 26

2.4 PHP編碼規範 26

2.4.1 什麼是編碼規範 26

2.4.2 PHP書寫規則 26

2.4.3 PHP命名規則 27

2.5 借助AI提升開發 31

2.5.1 AI智能註釋 31

2.5.2 AI詳解代碼 32

2.5.3 AI智能問答 33

小 結 28

上機指導 28

習 題 29

第3章 運算符和表達式 30

3.1 常量 30

3.1.1 自定義常量 30

實例:通過函數對常量進行定義、獲取和判斷

3.1.2 預定義常量 32

實例:使用預定義常量輸出PHP信息

3.2 變量 33

3.2.1 變量的概念 33

3.2.2 定義和使用變量 33

3.2.3 變量的賦值方式 34

實例:使用傳值賦值方式為變量賦值

3.2.4 可變變量 35

3.2.5 PHP預定義變量 36

3.3 PHP運算符 36

3.3.1 算術運算符 37

實例:算術運算符的簡單應用

3.3.2 字符串運算符 38

3.3.3 賦值運算符 38

實例:應用賦值運算符為指定變量賦值

3.3.4 位運算符 39

實例:對變量的值進行位運算

3.3.5 遞增或遞減運算符 40

實例:應用遞增和遞減運算符對變量進行操作

3.3.6 邏輯運算符 41

實例:對布爾值進行邏輯運算

3.3.7 比較運算符 41

3.3.8 條件運算符 43

實例:應用條件運算符實現簡單的判斷功能

3.3.9 運算符優先級 43

3.4 表達式 44

3.5 數據類型的轉換 45

3.5.1 自動轉換 45

實例:對不同類型的數據進行不同的運算

3.5.2 強制轉換 46

3.6 AI幫你編寫實例 54

3.6.1 使用AI編寫網站歡迎信息 54

3.6.2 使用AI編寫用戶年齡驗證功能 55

小 結 56

上機指導 56

習 題 57

第4章 流程控制語句 50

4.1 條件判斷語句 50

4.1.1 if語句 50

實例:判斷變量的值是否為真

4.1.2 if…else語句 51

實例:判斷學生的考試情況

4.1.3 switch語句 53

實例:根據不同的星期輸出不同的貼心提醒警句

4.2 循環控制語句 55

4.2.1 while循環語句 55

實例:輸出10以內的偶數

4.2.2 do…while循環語句 56

實例:比較while語句和do…while語句的不同點

4.2.3 for循環語句 57

實例:計算2~100之間所有偶數之和

4.2.4 foreach循環 59

實例:輸出購物車中的商品信息

4.2.5 循環結構的應用 60

實例:制作乘法口訣表

4.3 跳轉語句和終止語句 61

4.3.1 continue語句 61

實例:計算1到100之間所有奇數的和

4.3.2 break語句 62

4.3.3 exit語句 63

4.4 AI幫你編寫實例 72

4.4.1 使用AI編寫猜數字遊戲 72

4.4.2 使用AI編寫實現水仙花數的顯示 73

小 結 74

上機指導 74

習 題 75

第5章 PHP數組 65

5.1 數組概述 65

5.1.1 數組是什麼 65

5.1.2 數組的類型 66

5.2 創建一維數組 66

5.2.1 通過數組標識符“[]”創建數組 66

5.2.2 使用array()函數創建數組 67

實例:應用array()函數聲明數組

5.3 創建二維數組 68

5.3.1 通過數組標識符“[]”創建二維數組 68

5.3.2 使用array()函數創建二維數組 68

實例:應用array()函數聲明二維數組

5.4 遍歷與輸出數組 69

5.4.1 遍歷數組 69

實例:通過數組函數list()和each()遍歷數組

5.4.2 輸出數組 71

實例:通過print_r()函數輸出數組結構

5.5 數組函數及其應用 72

5.5.1 創建數組的函數 72

實例:應用range()函數建立數組

5.5.2 數組統計函數 74

實例:統計數組中元素個數

5.5.3 數組指針函數 76

實例:獲取數組中當前元素的鍵名和值

5.5.4 數組和變量之間的轉換 78

實例:將數組元素轉換為變量並輸出

5.5.5 數組檢索函數 79

實例:獲取數組中指定元素的鍵名

5.5.6 數組排序函數 81

實例:應用sort()函數為數組進行排序

5.6 AI幫你編寫實例 95

5.6.1 使用AI編寫統計學生各科分數

與總分 95

5.6.2 使用AI編寫統計購物車商品

價格 96

小 結 89

上機指導 89

習 題 90

第6章 PHP與Web頁面交互 91

6.1 表單數據的提交方式 91

6.1.1 GET方法提交表單數據 91

6.1.2 POST方法提交表單數據 92

6.1.3 POST方法與GET方法的使用區別 93

6.2 應用PHP全局變量獲取表單數據 93

6.2.1 $_POST[]全局變量 93

實例:通過$_POST[]獲取用戶輸入的信息

6.2.2 $_GET[]全局變量 95

6.3 使用表單 95

6.3.1 創建表單 95

6.3.2 表單元素 96

6.3.3 使用數組提交表單數據 100

6.3.4 表單綜合應用 100

實例:獲取用戶輸入的個人信息

6.4 實現文件的上傳 103

6.4.1 上傳文件相關配置 103

6.4.2 全局變量$_FILES 104

實例:輸出上傳文件的資料

6.4.3 實現PHP文件的上傳 105

實例:實現PHP文件的上傳

6.5 AI幫你解決問題 106

6.5.1 請AI幫助你編寫表單處理函數 106

6.5.2 請AI幫助你解決程序Bug問題 106

小 結 107

上機指導 108

習 題 109

第7章 函數 110

7.1 函數簡介 110

7.1.1 什麼是函數 110

7.1.2 函數的分類 110

7.2 自定義函數 111

7.2.1 自定義函數的定義 111

7.2.2 自定義函數的調用 111

實例:定義一個函數並調用

7.2.3 自定義函數的參數 112

實例:為定義的函數傳遞參數

7.2.4 自定義函數的返回值 113

7.2.5 變量的作用域 114

實例:靜態變量和普通變量的比較

7.2.6 變量函數 116

7.3 AI幫你編寫實例 117

7.3.1 使用AI編寫從1到n的累加和 117

7.3.2 使用AI編寫字符串的倒序輸出 117

小 結 121

上機指導 121

習 題 122

第8章 字符串操作 123

8.1 字符串的定義方法 123

8.1.1 使用單引號或雙引號定義字符串 123

8.1.2 使用定界符定義字符串 124

實例:使用定界符定義字符串並輸出

8.2 字符串處理函數 125

8.2.1 轉義、還原字符串 125

實例:使用轉義字符“\”對字符串進行轉義

8.2.2 獲取字符串長度 127

實例:應用strlen()函數獲取字符串長度

8.2.3 截取字符串 129

實例:應用substr()函數截取超長字符串

8.2.4 比較字符串 130

實例:對兩個字符串按字節進行比較

8.2.5 檢索字符串 132

實例:應用strstr()函數檢索字符串

8.2.6 替換字符串 133

實例:將字符串中的子串替換為指定字符串

8.2.7 去掉字符串首尾空格和特殊字符 135

8.2.8 格式化字符串 138

8.2.9 分割、合成字符串 138

實例:對字符串以指定分隔符進行拆分

8.2.10 字符串與HTML轉換 140

8.2.11 其他常用字符串函數 141

8.3 AI幫你編寫實例 141

8.3.1 使用AI編寫按條件查找學生姓名 141

8.3.2 使用AI編寫把日期轉化為指定

格式 142

小 結 142

上機指導 142

習 題 143

第9章 MySQL數據庫 144

9.1 MySQL簡介 144

9.1.1 什麼是MySQL 144

9.1.2 MySQL特點 145

9.1.3 MySQL 5支持的特性 145

9.2 啟動和關閉MySQL服務器 146

9.2.1 啟動MySQL服務器 146

9.2.2 連接和斷開MySQL服務器 146

9.3 操作MySQL數據庫 147

9.3.1 創建數據庫 147

9.3.2 選擇數據庫 147

9.3.3 查看數據庫 148

9.3.4 刪除數據庫 148

9.4 MySQL數據類型 148

9.4.1 數字類型 148

9.4.2 字符串類型 149

9.4.3 日期和時間類型 150

9.5 操作數據表 151

9.5.1 創建數據表 151

9.5.2 查看表結構 152

9.5.3 修改表結構 153

9.5.4 重命名數據表 154

9.5.5 刪除數據表 154

9.6 數據表記錄的更新操作 154

9.6.1 數據表記錄的添加 155

9.6.2 數據表記錄的修改 155

9.6.3 數據表記錄的刪除 155

9.7 數據表記錄的查詢操作 156

9.8 MySQL數據庫的備份與還原 159

9.8.1 使用mysqldump命令備份數據庫 159

9.8.2 使用mysql命令還原數據庫 159

9.9 AI幫你解決問題 159

9.9.1 請AI幫助你解決MySQL添加語句生成問題 159

9.9.2 請AI幫助你解決MySQL修改語句生成問題 159

小 結 159

上機指導 160

習 題 160

第10章 PHP操作MySQL數據庫 162

10.1 PHP操作MySQL數據庫的方法 162

10.1.1 連接MySQL服務器 162

實例:創建與MySQL服務器的連接

10.1.2 選擇MySQL數據庫 163

實例:選擇指定名稱的數據庫

10.1.3 執行SQL語句 164

10.1.4 將結果集返回到數組中 165

實例:讀取數據表中的數據

10.1.5 獲取查詢結果集中的記錄數 169

實例:獲取結果集中行的數目

10.1.6 釋放內存 169

10.1.7 關閉連接 169

10.2 管理MySQL數據庫中的數據 171

10.2.1 添加數據 171

實例:向圖書信息表中添加一條記錄

10.2.2 編輯數據 172

實例:實現對數據的更新操作

10.2.3 刪除數據 174

實例:刪除數據表中的指定記錄

10.2.4 批量數據操作 175

10.3 AI幫你編寫實例 175

10.3.1 使用AI編寫簡易留言本 175

10.3.2 使用AI編寫學生成績查詢功能 175

小 結 179

上機指導 179

習 題 181

第11章 PHP會話控制 182

11.1 Cookie的操作 182

11.1.1 瀏覽器中的Cookie設置 182

11.1.2 了解Cookie 182

11.1.3 創建Cookie 183

實例:通過setcookie()函數創建Cookie

11.1.4 讀取Cookie 184

實例:通過$_COOKIE[]讀取Cookie的值

11.1.5 刪除Cookie 186

11.1.6 創建Cookie數組 186

實例:創建Cookie數組並讀取數組中的值

11.2 Session的操作 187

11.2.1 了解Session 187

11.2.2 啟動Session 187

11.2.3 註冊Session 188

11.2.4 使用Session 188

實例:輸出Session中保存的數據

11.2.5 刪除Session 189

11.2.6 Session綜合應用 189

實例:通過Session來控制用戶對頁面的訪問權限

11.2.7 電子商務平臺網用戶管理和權限控制 191

11.3 Cookie與Session的比較 193

11.4 AI幫你編寫實例

11.4.1 使用AI編寫自動登錄功能

11.4.2 使用AI編寫網站在線人數統計

小 結 193

上機指導 194

習 題 196

第12章 面向對象基礎 197

12.1 面向對象的基本概念 197

12.1.1 類 197

12.1.2 對象 198

12.1.3 面向對象的特點 198

12.2 類的聲明 199

12.2.1 定義類 199

12.2.2 成員屬性 200

12.2.3 成員常量 200

12.2.4 成員方法 200

12.3 類的實例化 201

12.3.1 對象的創建 201

12.3.2 訪問類中的成員 202

實例:定義Student類並對其實例化

12.3.3 “$this”和“::”操作符 202

實例:調用類中的常量和方法

12.3.4 構造方法和析構方法 204

12.4 面向對象的封裝 205

12.4.1 公共成員關鍵字public 205

12.4.2 私有成員關鍵字private 206

實例:private關鍵字的使用

12.4.3 保護成員關鍵字protected 206

實例:protected關鍵字的使用

12.5 面向對象的繼承 207

12.5.1 繼承關鍵字extends 207

實例:類的繼承操作

12.5.2 子類調用父類的成員方法 208

12.5.3 覆蓋父類方法 209

12.6 static關鍵字 210

12.6.1 靜態屬性 210

12.6.2 靜態方法 210

實例:調用類中的靜態方法

12.7 抽象類和接口 211

12.7.1 抽象類 211

12.7.2 接口 213

12.8 面向對象實現多態 214

12.8.1 通過繼承實現多態 215

12.8.2 通過接口實現多態 215

12.9 AI幫你編寫實例 216

12.9.1 使用AI編寫字符串操作類 216

12.9.2 使用AI編寫一個多態類 217

小 結 221

上機指導 221

習 題 223

第13章 Ajax技術 224

13.1 Ajax概述 224

13.1.1 什麼是Ajax 224

13.1.2 Ajax的開發模式 224

13.1.3 Ajax的優點 225

13.2 Ajax技術的組成 225

13.2.1 JavaScript腳本語言 225

13.2.2 XMLHttpRequest對象 226

實例:通過XMLHttpRequest對象讀取HTML文件

13.2.3 XML、DOM和CSS 230

13.3 Ajax與PHP的交互 230

13.3.1 通過GET方式與PHP進行交互 230

實例:應用Ajax技術查詢數據表中的數據

13.3.2 通過POST方式與PHP進行交互 232

實例:應用Ajax技術向數據表中添加數據

13.4 AI幫你編寫實例 236

13.4.1 使用AI編寫活動報名功能 236

13.4.2 使用AI編寫無刷新更新 236

小 結 237

上機指導 237

習 題 240

第14章 ThinkPHP6框架 284

14.1 ThinkPHP6簡介 284

14.1.1 主要新特性 285

14.1.2 運行環境 285

14.1.3 下載與安裝 285

14.2 ThinkPHP6基礎 286

14.2.1 目錄結構 286

14.2.2 命名規範 288

14.2.3 架構總覽 289

14.3 ThinkPHP6配置 291

14.3.1 配置目錄 291

14.3.2 入口配置 292

14.3.3 多應用模式 293

14.3.4 資源配置 295

14.3.5 調試配置 296

14.4 ThinkPHP6路由 296

14.4.1 路由概述 296

14.4.2 路由模式 297

14.4.3 路由定義 297

14.4.4 路由表達式 298

14.4.5 路由地址 299

14.4.6 路由分組 299

14.4.7 MISS路由 300

14.4.8 URL生成 300

14.5 ThinkPHP6控制器 302

14.5.1 控制器的定義 302

14.5.2 控制器的初始化 302

14.5.3 跳轉和重定向 303

14.5.4 請求信息 304

14.5.5 輸入變量 305

14.5.6 請求類型 308

14.6 ThinkPHP6數據庫 309

14.6.1 數據庫的連接 309

14.6.2 基本操作 312

14.7 ThinkPHP6模型 316

14.7.1 模型的定義 316

14.7.2 設置數據表 316

14.7.3 模型調用 317

14.7.4 模型初始化 318

14.7.5 模型基礎操作 318

14.7.6 模型事件 324

14.8 ThinkPHP6視圖 325

14.8.1 視圖實例化 325

14.8.2 內置模板引擎 325

14.8.3 模板賦值 326

14.8.4 模板渲染 327

14.8.5 模板輸出替換 328

14.9 ThinkPHP6模板 329

14.9.1 模板特點 329

14.9.2 模板標簽 330

14.9.3 變量輸出 331

14.9.4 使用函數 332

14.9.5 內置標簽 332

14.10 AI幫你解決問題 332

14.10.1 使用AI幫你解決TP6路由自定義配制 332

14.10.2 使用AI幫你解決TP6調試程序

及查看日誌 332

小 結 333

第15章 綜合案例——編程e學網 332

15.1 案例設計 332

15.2 數據庫設計 333

15.2.1 數據庫設計 333

15.2.2 數據表設計 333

15.3 前臺模塊 335

15.3.1 視頻首頁 335

15.3.2 視頻列表頁 339

15.3.3 會員中心 342

15.3.4 登錄註冊 344

15.4 後臺模塊 345

15.4.1 課程管理 345

15.4.2 註冊會員 353

15.4.3 賬號管理 353

15.4.4 登錄 353

小 結 354

第16章 課程設計——九宮格抽獎 355

16.1 案例設計 355

16.2 數據庫設計 356

16.2.1 數據庫設計 356

16.2.2 數據表設計 356

16.3 抽獎設計 358

16.4 抽獎流程 359

16.4.1 後臺設置 359

16.4.2 前臺設置 361

16.4.3 開始抽獎 361

16.5 微信掃碼分享 366

16.6 個人中心 369

16.6.1 中獎信息 369

16.6.2 賬號管理 370

16.7 後臺管理系統 371

16.7.1 獎品設置 371

16.7.2 中獎信息 371

16.7.3 會員列表 372

16.8 登錄註冊 373

16.8.1 登錄 373

16.8.2 註冊 375

小 結 380