PHP+MySQL動態(tài)網(wǎng)站開發(fā)
定 價:59.8 元
叢書名:工業(yè)和信息化精品系列教材
- 作者:黑馬程序員
- 出版時間:2025/2/1
- ISBN:9787115647658
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.132.3SQ
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書是面向PHP語言和MySQL數(shù)據(jù)庫初學(xué)者的一本入門教材,使用通俗易懂的語言、豐富的圖解和實用的案例,詳細講解PHP語言和MySQL數(shù)據(jù)庫的相關(guān)知識,并通過項目實戰(zhàn)幫助讀者掌握使用PHP語言結(jié)合MySQL開發(fā)動態(tài)網(wǎng)站的全過程。
本書共11章,第1~4章講解PHP技術(shù),內(nèi)容包括初識PHP、PHP語法基礎(chǔ)、PHP函數(shù)與數(shù)組、錯誤處理、HTTP、表單的提交與接收、會話技術(shù)、圖像處理、目錄和文件操作等;第5~8章講解MySQL技術(shù),內(nèi)容包括數(shù)據(jù)庫基礎(chǔ)知識、MySQL環(huán)境搭建、數(shù)據(jù)庫操作、字符集和校對集、數(shù)據(jù)類型、數(shù)據(jù)表的約束、MySQL 多表操作、事務(wù)、視圖、數(shù)據(jù)備份和數(shù)據(jù)還原、用戶與權(quán)限、索引、分區(qū)技術(shù)、存儲過程、觸發(fā)器等;第9章講解使用PHP操作MySQL;第10章講解PHP面向?qū)ο蟪绦蛟O(shè)計;第11章講解PHP項目開發(fā)技術(shù)。
本書可作為高等教育本、?圃盒S嬎銠C相關(guān)專業(yè)的教材,也可作為計算機編程愛好者的自學(xué)參考書。
1.黑馬程序員“1+X”系列教材改版;
2.本書配套豐富的教學(xué)資源,內(nèi)容包括教學(xué)PPT、教學(xué)大綱、教學(xué)設(shè)計、教學(xué)視頻、課后習(xí)題及答案。
3.本書適合作為高等教育本、?圃盒S嬎銠C相關(guān)專業(yè)的教材,也可作為廣大計算機編程愛好者的參考書。
黑馬程序員成立于2006年,由中國Java培訓(xùn)先行者張孝祥老師發(fā)起,聯(lián)合全球最大的中文IT社區(qū)CSDN、中關(guān)村軟件園共同創(chuàng)辦的一家專業(yè)教育機構(gòu)。辦學(xué)至今,我們一直堅守著“為千萬人少走彎路而著書,為中華軟件之崛起而講課”的辦學(xué)理念,堅持培養(yǎng)優(yōu)秀軟件應(yīng)用工程師的宏偉目標,在累計培養(yǎng)的十萬余名學(xué)員中,其中90%的學(xué)員均已在北、上、廣等一線城市高薪就業(yè)。為了迎合軟件市場的需求,我們陸續(xù)開設(shè)了Java、網(wǎng)頁平面、PHP、.Net、iOS、C/C++、Android等9個專業(yè)方向的課程,并且未來將逐漸開設(shè)其他專業(yè)方向的課程。隨著傳智播客的日益壯大,除了北京總部,我們在上海、廣州、武漢、成都、深圳等地也創(chuàng)立了直營分支機構(gòu),傳智播客儼然已成為了國內(nèi)具有專業(yè)口碑的IT教育機構(gòu)。
第 1章 初識PHP 1
1.1 PHP簡介 1
1.1.1 PHP概述 1
1.1.2 PHP的特點 2
1.2 網(wǎng)站簡介 2
1.2.1 網(wǎng)站概述 2
1.2.2 網(wǎng)站的訪問 3
1.3 搭建開發(fā)環(huán)境 3
1.3.1 安裝Visual Studio Code 4
1.3.2 安裝Apache HTTP Server 6
1.3.3 安裝PHP 10
1.4 配置Web服務(wù)器 12
1.4.1 配置虛擬主機 12
1.4.2 配置目錄 13
1.4.3 【案例】根據(jù)需求配置虛擬
主機 14
本章小結(jié) 15
課后練習(xí) 15
第 2章 PHP語法基礎(chǔ) 16
2.1 基本語法 16
2.1.1 PHP標記 16
2.1.2 注釋 18
2.1.3 輸出語句 18
2.1.4 標識符 19
2.1.5 關(guān)鍵字 19
2.1.6 【案例】在網(wǎng)頁中嵌入PHP
代碼 20
2.2 變量、常量和表達式 20
2.2.1 變量 20
2.2.2 可變變量 21
2.2.3 常量 21
2.2.4 預(yù)定義常量 22
2.2.5 表達式 23
2.2.6 【案例】顯示服務(wù)器信息 23
2.3 數(shù)據(jù)類型 23
2.3.1 數(shù)據(jù)類型分類 23
2.3.2 數(shù)據(jù)類型檢測 26
2.3.3 數(shù)據(jù)類型轉(zhuǎn)換 26
2.4 運算符 28
2.4.1 算術(shù)運算符 28
2.4.2 賦值運算符 29
2.4.3 【案例】商品價格計算 29
2.4.4 錯誤控制運算符 29
2.4.5 比較運算符 30
2.4.6 合并運算符 30
2.4.7 三元運算符 31
2.4.8 邏輯運算符 31
2.4.9 遞增與遞減運算符 31
2.4.10 位運算符 32
2.4.11 運算符優(yōu)先級 33
2.5 流程控制 33
2.5.1 分支結(jié)構(gòu) 34
2.5.2 【案例】判斷學(xué)生成績等級 37
2.5.3 循環(huán)結(jié)構(gòu) 37
2.5.4 循環(huán)嵌套 39
2.5.5 【案例】九九乘法表 40
2.5.6 跳轉(zhuǎn)語句 41
2.6 文件包含語句 41
2.6.1 include語句和require語句 42
2.6.2 include_once語句和
require_once語句 43
本章小結(jié) 44
課后練習(xí) 44
第3章 PHP函數(shù)與數(shù)組 46
3.1 函數(shù) 46
3.1.1 函數(shù)的定義和調(diào)用 47
3.1.2 設(shè)置函數(shù)參數(shù)的默認值 47
3.1.3 變量的作用域 48
3.1.4 可變函數(shù) 49
3.1.5 匿名函數(shù) 49
3.1.6 函數(shù)的遞歸調(diào)用 50
3.1.7 字符串函數(shù) 50
3.1.8 數(shù)學(xué)函數(shù) 52
3.1.9 時間和日期函數(shù) 52
3.1.10 【案例】獲取文件擴展名 53
3.2 數(shù)組 54
3.2.1 初識數(shù)組 54
3.2.2 數(shù)組的基本使用 54
3.2.3 遍歷數(shù)組 56
3.2.4 數(shù)組和字符串的轉(zhuǎn)換 56
3.2.5 【案例】訂貨單 57
3.3 常用數(shù)組函數(shù) 58
3.3.1 基本數(shù)組函數(shù) 58
3.3.2 數(shù)組排序函數(shù) 59
3.3.3 數(shù)組檢索函數(shù) 60
3.3.4 【案例】學(xué)生隨機分組 61
本章小結(jié) 61
課后練習(xí) 61
第4章 PHP進階 63
4.1 錯誤處理 63
4.1.1 錯誤類型 63
4.1.2 錯誤信息 64
4.2 HTTP 66
4.2.1 HTTP概述 66
4.2.2 HTTP請求 66
4.2.3 查看請求數(shù)據(jù) 67
4.2.4 HTTP響應(yīng) 68
4.2.5 設(shè)置響應(yīng)數(shù)據(jù) 69
4.3 表單的提交與接收 70
4.3.1 表單提交方式 70
4.3.2 接收表單數(shù)據(jù) 71
4.3.3 表單提交數(shù)組值 71
4.4 會話技術(shù) 72
4.4.1 Cookie簡介 72
4.4.2 Cookie的基本使用方法 72
4.4.3 Session簡介 74
4.4.4 Session的基本使用方法 75
4.4.5 Session的配置 75
4.4.6 【案例】用戶登錄和退出 75
4.5 圖像處理 76
4.5.1 開啟GD擴展 76
4.5.2 常用的圖像處理函數(shù) 77
4.5.3 【案例】制作驗證碼 77
4.6 目錄和文件操作 78
4.6.1 目錄操作 78
4.6.2 文件操作 80
4.6.3 【案例】遞歸遍歷目錄 82
4.6.4 單文件上傳 82
4.6.5 多文件上傳 83
4.6.6 【案例】文件上傳 84
4.7 正則表達式 84
4.7.1 正則表達式概述 84
4.7.2 正則表達式函數(shù) 85
本章小結(jié) 85
課后練習(xí) 85
第5章 MySQL基礎(chǔ)(上) 87
5.1 數(shù)據(jù)庫基礎(chǔ)知識 87
5.1.1 數(shù)據(jù)庫概述 87
5.1.2 數(shù)據(jù)模型 88
5.1.3 關(guān)系數(shù)據(jù)庫 90
5.1.4 非關(guān)系數(shù)據(jù)庫 90
5.1.5 SQL簡介 91
5.1.6 SQL語法規(guī)則 91
5.2 MySQL環(huán)境搭建 92
5.2.1 獲取MySQL 92
5.2.2 安裝MySQL 93
5.2.3 配置和啟動MySQL 94
5.2.4 用戶登錄與設(shè)置密碼 94
5.3 數(shù)據(jù)庫操作 95
5.3.1 創(chuàng)建數(shù)據(jù)庫 95
5.3.2 查看數(shù)據(jù)庫 96
5.3.3 使用數(shù)據(jù)庫 97
5.3.4 修改數(shù)據(jù)庫 97
5.3.5 刪除數(shù)據(jù)庫 98
5.4 數(shù)據(jù)表操作 98
5.4.1 創(chuàng)建數(shù)據(jù)表 98
5.4.2 查看數(shù)據(jù)表 99
5.4.3 修改數(shù)據(jù)表 101
5.4.4 刪除數(shù)據(jù)表 105
5.5 數(shù)據(jù)操作 105
5.5.1 添加數(shù)據(jù) 105
5.5.2 查詢數(shù)據(jù) 106
5.5.3 修改數(shù)據(jù) 107
5.5.4 刪除數(shù)據(jù) 108
本章小結(jié) 108
課后練習(xí) 108
第6章 MySQL基礎(chǔ)(下) 110
6.1 字符集和校對集 110
6.1.1 字符集概述 110
6.1.2 字符集變量 111
6.1.3 校對集概述 112
6.1.4 字符集和校對集的設(shè)置 113
6.2 數(shù)據(jù)類型 114
6.2.1 數(shù)值類型 114
6.2.2 字符串類型 118
6.2.3 日期和時間類型 121
6.3 數(shù)據(jù)表的約束 125
6.3.1 默認值約束 125
6.3.2 非空約束 127
6.3.3 唯一約束 128
6.3.4 主鍵約束 130
6.4 自動增長 131
本章小結(jié) 133
課后練習(xí) 133
第7章 MySQL多表操作 135
7.1 數(shù)據(jù)表的聯(lián)系 135
7.1.1 一對一 136
7.1.2 一對多 136
7.1.3 多對多 137
7.2 數(shù)據(jù)庫設(shè)計范式 137
7.2.1 第 一范式 138
7.2.2 第二范式 138
7.2.3 第三范式 139
7.2.4 逆規(guī)范化 140
7.3 數(shù)據(jù)進階操作 141
7.3.1 去除查詢結(jié)果中的重復(fù)數(shù)據(jù) 141
7.3.2 運算符 143
7.3.3 聚合函數(shù) 144
7.3.4 分組 147
7.3.5 排序 150
7.3.6 限量 151
7.4 聯(lián)合查詢 152
7.4.1 聯(lián)合查詢概述 152
7.4.2 聯(lián)合查詢并排序 153
7.5 連接查詢 154
7.5.1 交叉連接查詢 154
7.5.2 內(nèi)連接查詢 156
7.5.3 外連接查詢 157
7.6 子查詢 159
7.6.1 子查詢分類 159
7.6.2 子查詢關(guān)鍵字 163
7.7 外鍵約束 165
7.7.1 外鍵約束概述 165
7.7.2 添加外鍵約束 166
7.7.3 外鍵約束的表的數(shù)據(jù)操作 167
7.7.4 刪除外鍵約束 169
本章小結(jié) 169
課后練習(xí) 170
第8章 MySQL進階 171
8.1 事務(wù) 172
8.1.1 事務(wù)概述 172
8.1.2 事務(wù)處理 172
8.1.3 事務(wù)保存點 174
8.2 視圖 176
8.2.1 視圖概述 176
8.2.2 創(chuàng)建視圖 176
8.2.3 視圖管理 177
8.2.4 視圖數(shù)據(jù)操作 178
8.3 數(shù)據(jù)備份和數(shù)據(jù)還原 179
8.3.1 數(shù)據(jù)備份 179
8.3.2 數(shù)據(jù)還原 180
8.4 用戶與權(quán)限 181
8.4.1 用戶管理 181
8.4.2 權(quán)限管理 182
8.5 索引 184
8.5.1 索引概述 184
8.5.2 創(chuàng)建索引 184
8.6 分區(qū)技術(shù) 185
8.6.1 分區(qū)技術(shù)概述 185
8.6.2 創(chuàng)建分區(qū) 186
8.7 存儲過程 187
8.7.1 存儲過程概述 187
8.7.2 創(chuàng)建和調(diào)用存儲過程 187
8.8 觸發(fā)器 189
8.8.1 觸發(fā)器概述 189
8.8.2 創(chuàng)建和使用觸發(fā)器 189
本章小結(jié) 191
課后練習(xí) 191
第9章 使用PHP操作MySQL 193
9.1 PHP中常用的數(shù)據(jù)庫擴展 193
9.2 初識MySQLi擴展 194
9.2.1 開啟MySQLi擴展 194
9.2.2 MySQLi擴展的常用函數(shù) 194
9.3 使用MySQLi擴展操作數(shù)據(jù)庫 195
9.3.1 連接數(shù)據(jù)庫 195
9.3.2 錯誤處理 196
9.3.3 設(shè)置字符集 197
9.3.4 添加、更新和刪除數(shù)據(jù) 197
9.3.5 查詢數(shù)據(jù) 199
9.3.6 關(guān)閉數(shù)據(jù)庫連接 200
9.4 項目實戰(zhàn)——新聞管理系統(tǒng) 201
9.4.1 項目展示 201
9.4.2 功能介紹 202
9.4.3 數(shù)據(jù)庫設(shè)計 203
本章小結(jié) 203
課后練習(xí) 203
第 10章 PHP面向?qū)ο蟪绦蛟O(shè)計 205
10.1 初識面向?qū)ο蟆?06
10.1.1 面向過程與面向?qū)ο蟮膮^(qū)別 206
10.1.2 面向?qū)ο笾械念惻c對象 206
10.1.3 面向?qū)ο蟮娜筇匦浴?07
10.2 類與對象的使用 207
10.2.1 類的定義 208
10.2.2 類的實例化 208
10.2.3 類成員 209
10.2.4 對象的克隆 210
10.2.5 訪問控制修飾符 211
10.2.6 類中的$this 212
10.2.7 構(gòu)造方法 212
10.2.8 析構(gòu)方法 213
10.3 類常量和靜態(tài)成員 214
10.3.1 類常量 214
10.3.2 靜態(tài)成員 214
10.3.3 【案例】封裝數(shù)據(jù)庫操作類 215
10.4 繼承 215
10.4.1 繼承的實現(xiàn) 215
10.4.2 有限繼承 216
10.4.3 重寫 218
10.4.4 靜態(tài)延遲綁定 219
10.4.5 final關(guān)鍵字 220
10.5 抽象類和抽象方法 220
10.6 接口 221
10.6.1 接口的實現(xiàn) 221
10.6.2 接口的繼承 222
10.7 Trait代碼復(fù)用 223
10.7.1 Trait的實現(xiàn) 223
10.7.2 Trait同名方法的處理 223
10.7.3 Trait優(yōu)先級 224
10.8 Iterator迭代器 225
10.9 Generator生成器 226
10.10 命名空間 227
10.10.1 命名空間的定義 227
10.10.2 命名空間的訪問 228
10.10.3 命名空間的導(dǎo)入 228
10.11 異常處理 230
10.11.1 異常的拋出和捕獲 230
10.11.2 多異常捕獲處理 232
本章小結(jié) 232
課后練習(xí) 232
第 11章 PHP項目開發(fā)技術(shù) 234
11.1 PDO擴展 234
11.1.1 開啟PDO擴展 234
11.1.2 使用PDO擴展 235
11.2 MVC設(shè)計模式 236
11.2.1 PHP代碼的發(fā)展歷程 236
11.2.2 MVC設(shè)計模式概述 237
11.3 Smarty模板引擎 238
11.3.1 安裝Smarty模板引擎 238
11.3.2 使用Smarty模板引擎 238
11.4 創(chuàng)建基于MVC設(shè)計模式的
框架 240
11.4.1 功能分析 240
11.4.2 實現(xiàn)步驟 241
11.5 項目實戰(zhàn)——文章管理系統(tǒng) 241
11.5.1 項目展示 242
11.5.2 功能介紹 243
本章小結(jié) 243
課后練習(xí) 244