PHP程序設計
內容描述
PHP是一種運行於服務器端並完全跨平臺的嵌入式腳本編程語言,是目前開發各類Web應用的主流語言之一。本書站在初學者的角度,以通俗易懂的語言、豐富的圖表、實用的案例詳細介紹了PHP語言。全書共分11章:第1~7章主要介紹了Web開發概念和PHP入門、PHP基本語法、PHP流程控制和數組、PHP函數及應用、PHP與網頁交互、PHP訪問MySQL數據庫、會話控制;第8~11章則圍繞PHP進階、PHP中的面向對象編程、PHP與MVC開發模式及課程案例等進行了介紹。
本書適用於電腦相關專業基於PHP的Web開發課程的教學,也可作為基於PHP的Web應用項目開發愛好者的參考用書。可以根據學習者層次不同選擇相關能力指標、知識點進行教學和學習。
目錄大綱
第1章
Web開發概念和PHP入門1
1.1體系結構選擇1
1.2網站開發中常用概念介紹2
1.3 Web工作原理4
1.4動態網站開發所需的Web構件5
1.5初識PHP 10
1.5.1什麼是PHP 10
1.5.2第一個PHP文件10
1.6搭建PHP開發運行環境11
1.6.1 XAMPP安裝12
1.6.2 XAMPP配置和使用15
1.6.3 WampServer的安裝使用16
1.7代碼編輯工具Sublime 18
1.7.1 Sublime的常用操作18
1.7.2在Sublime中安裝Emmet 20
1.7.3設置文檔的自動提示與補全25
1.8本章習題25
第2章
PHP基本語法26
2.1將PHP嵌入HTML代碼26
2.2 PHP程序中的註釋27
2.3 PHP中的輸出方法28
2.4變量29
2 .4.1變量的命名30
2.4.2變量的數據類型30
2.4.3變量類型的轉換35
2.4.4 PHP對變量的操作37
2.5常量39
2.5.1常量定義39
2.5.2使用PHP預定義常量40
2.6 PHP中的運算符和表達式41
2.6.1算術運算符41
2.6.2字符串運算符41
2.6.3賦值運算符41
2.6.4比較運算符42
2.6.5邏輯運算符42
2.6.6位運算符42
2.6.7其他運算符43
2.6.8表達式43
2.7本章小結45
2.8本章習題45
第3章
PHP流程控制和數組47
3.1 PHP中的分支結構47
3.1.1單分支結構47
3.1 .2雙分支結構49
3.1.3多分支結構50
3.2 PHP中的循環結構53
3.2.1 while語句53
3.2.2 do…while語句54
3.2.3 for循環語句55
3.2.4 foreach語句56
3.3特殊的流程控制語句57
3.4 PHP中的數組59
3.4.1數組的分類59
3.4.2數組的定義和遍歷60
3.5本章小結67
3.6本章習題67
第4章
PHP函數及應用69
4.1 PHP函數語法69
4.1.1定義函數和調用函數69
4.1.2函數參數和返回值71
4.1.3使用文件包含函數組織代碼75
4.2 PHP變量範圍77
4.3 PHP對字符串的處理79
4.3.1對字符串進行分割與合併79
4.3.2獲取字符串子串81
4.3. 3字符串查找82
4.3.4字符串替換83
4.3.5 HTML字符串處理函數84
4.4用PHP獲取日期和時間85
4.4.1更改時區85
4.4.2 UNIX時間戳85
4.4.3生成日期和時間的函數86
4.4.4獲取日期和時間的信息88
4.5 PHP操作文件和目錄90
4.5.1打開和關閉文件90
4.5.2讀取文件91
4.5.3寫入文件94
4.5.4目錄操作函數95
4.5.5獲取路徑中的文件名和目錄名95
4.5.6判斷文件和目錄是否存在96
4. 5.7刪除和復製文件96
4.6本章習題96
第5章
PHP與網頁交互97
5.1 PHP的預定義數組97
5.1.1預定義數組$_POST 98
5.1.2預定義數組$_GET 101
5.1.3其他的預定義數組102
5.2應用實踐:獲取用戶註冊表單信息並輸出104
5.3文件上傳107
5.3.1瀏覽器端文件上傳設置107
5.3.2在服務器端通過PHP處理上傳文件108
5.4應用實踐:註冊用戶上傳頭像112
5.5文件下載113
5.6本章小結115
5.7本章習題115
第6章
PHP訪問MySQL數據庫117
6.1 MySQL數據庫基礎知識117
6.1.1 MySQL數據庫的存儲引擎117
6 .1.2 MySQL數據庫的數據類型118
6.1.3 MySQL字符集與字符序120
6.1.4 MySQL數據庫的SQL語法基礎121
6.1.5數據庫用戶權限管理123
6.2認識Navicat 124
6.3應用實踐:設計動漫電影信息網站的數據庫132
6.4 PHP訪問MySQL數據庫的流程138
6.5 PHP訪問MySQL數據庫的函數139
6.5.1連接MySQL數據庫服務器的函數139
6.5.2獲取MySQL錯誤信息的函數141
6.5.3執行SQL語句的函數142
6.5.4處理結果集的函數143
6.5. 5關閉數據庫連接的函數147
6.6應用實踐:註冊用戶信息管理148
6.7應用實踐:分頁164
6.8應用實踐:抽取系統公共文件168
6.9本章小結170
6.10本章習題170
第7章
會話控制173
7.1 Session工作原理173
7.2 Session的生命週期174
7.3操作Session的函數175
7.4 Session配置176
7.5應用實踐:保存用戶登錄信息177
7.6應用實踐:登錄權限驗證179
7.7 Cookie的使用181
7.8應用實踐:自動登錄186
7.9 Header函數和輸出緩存188
第8章
PHP進階191
8.1 PHP與Ajax 191
8.1.1 Ajax概述191
8.1.2 XMLHttpRequest對象192
8.1.3應用實踐:驗證用戶名是否可用195
8.1.4 jQuery中的Ajax 198
8.2 PHP中富文本的應用199
8.2.1什麼是富文本199
8.2.2應用實踐:使用UEditor進行新聞發布199
8.2.3 UEditor中的上傳路徑配置202
8.3用PHP發送郵件203
8.3.1 PHPMailer 203
8.3.2應用實踐:使用郵件找回密碼207
8.4用PHP生成圖表211
8.4.1什麼是ECharts 211
8.4.2應用實踐:使用ECharts統計用戶信息214
8.5 Excel導入導出218
8.5.1 PHPExcel介紹218
8.5.2應用實踐:使用PHPExcel進行用戶信息導入導出219
8.5. 3使用PHPExcel的常見問題222
8.6本章習題223
第9章
PHP中的面向對象編程224
9.1面向對象編程介紹224
9.1.1什麼是類225
9.1.2什麼是對象225
9 .2如何抽像一個類225
9.2.1類的聲明226
9.2.2成員屬性226
9.2.3成員方法227
9.3通過類實例化對象228
9.3.1實例化對象228
9.3.2對像中成員的訪問229
9.3.3特殊對象引用$this 230
9.3.4構造方法和析構方法232
9.4封裝性234
9 .4.1設置私有成員234
9.4.2私有成員的訪問235
9.5繼承性237
9.5.1類繼承的應用238
9.5.2訪問類型控制239
9.5.3子類中重載父類的方法241
9.6本章小結243
9.7本章習題243
第10章
PHP與MVC開發模式244
10.1 MVC模式的工作原理244
10.2 MVC模式在項目中的應用244
10 .2.1階段一:構建MVC結構244
10.2.2階段二:抽取模型層業務邏輯248
10.2.3階段三:提取訪問網站的入口文件252
10.2.4階段四:抽取視圖層功能252
10.3本章小結256
10.4本章習題257
第11章
課程案例258
11.1使用Bootstrap美化網頁258
11.1.1用戶註冊表單頁面260
11.1.2用戶登錄表單頁面262
11.1.3管理員登錄表單頁面264
11.1.4用戶列表頁面266
11.1.5修改用戶信息頁面267
11.2系統總體項目描述269
11.3地區管理子系統的實現273
11. 3.1添加地區功能273
11.3.2顯示地區列表功能275
11.3.3修改地區功能276
11.3.4刪除地區功能277
11.4動漫電影信息管理子系統的實現279
11.4 .1添加動漫電影功能279
11.4.2顯示動漫電影信息列表功能283
11.4.3修改動漫電影信息功能286
11.4.4刪除動漫電影信息功能291
11.5前台首頁的實現291
11 .5.1網頁導航條的實現291
11.5.2用戶登錄功能296
11.5.3首頁主體部分的實現298
11.6前台欄目列表頁的實現301
11.7前台動漫電影詳細內容頁的實現304
11.8留言管理子系統的實現318
11.9本章小結321
作者介紹
陳運軍:瀘州職業技術學院信息工程學院院長。
他目前的研究興趣主要包括物聯網工程應用、人工智能、信息控制系統等。
李洪建:碩士,山東科技職業學院副教授,山東省計算機專指委委員,曾指導學生獲國賽一等獎2項、國家教學成果獎1項、省教學成果獎特等獎1項和一等獎2項,近五年主持省軟科學、省教改、省高校科技計劃項目6項,參與各類橫縱向課題27項。
授權實用新型專利2項,軟件著作權2件。
高偉鋒:南寧職業技術學院人工智能學院副教授。
2010年獲廣西大學工程碩士學位。
目前研究領域為Web前端技術、中文自然語言處理等。
陳靜:教授,國務院特殊津貼專家。
從事職業教育計算機專業教學20年,主要研究領域為軟件開發、測試、移動應用軟件開發等。
趙林:廣西電力職業技術學院人工智能與信息工程學院院長,計算機科學與技術專業教授。
2012年獲得廣西大學計算機學院計算機技術領域碩士學位。
廣西電子學會專家委員會高級專家會員、廣西科技廳項目評審專家。
2017年獲得國際工程師IET主任工程師資,主要研究方向為嵌入式應用,軟件系統開發等。