PHP語言易學易用,功能強大,跨平臺運行,已成為廣泛使用的Web服務器端應用程序開發(fā)語言之一。JavaScript是Web前端開發(fā)的編程語言,以JavaScript為基礎的jQuery、Vue.js等Web前端開發(fā)框架,也受到廣大程序員的青睞,成為目前流行的Web前端開發(fā)框架。目前市場上有關PHP的教材較多,但是將PHP和jQuery、Vue.js等Web前端開發(fā)框架整合在一起的教材比較少。因此,作者結合多年以來的軟件開發(fā)經(jīng)驗和教學經(jīng)驗,編寫了本書。
全書共分為12章,主要內容包括PHP入門和開發(fā)環(huán)境構建、PHP語言基礎、PHP常用內置函數(shù)、PHP面向對象編程、PHP與瀏覽器交互編程、PHP訪問MySQL數(shù)據(jù)庫、JavaScript程序設計、jQuery和jQuery EasyUI框架、AJAX技術和PHP的結合、Vue.js框架基礎等知識,第11、12章通過課堂考勤系統(tǒng)、信息管理系統(tǒng)兩個應用系統(tǒng)案例,分別介紹了PHP與jQuery EasyUI結合、PHP與Vue.js結合,完成Web應用網(wǎng)站的開發(fā)過程。通過模仿這兩個應用系統(tǒng),讀者可以快速開發(fā)出其他Web應用系統(tǒng)。
本書內容豐富,涉及面廣,結構嚴謹,強調知識與實踐相結合。本書為微課視頻版教材,各章節(jié)主要內容都配備了相應的微課視頻,視頻總時長為1000分鐘。全書提供了大量實例,每章后面附有上機實踐題和習題,有助于讀者鞏固所學知識,提高開發(fā)實踐技能,達到學以致用的目的。
本書配套資源豐富,包括教學大綱、教學課件、電子教案、習題答案、程序源碼和教學進度表。資源下載提示
課件等資源: 掃描封底的課件下載二維碼,在公眾號書圈下載。
素材(源碼)等資源: 掃描目錄上方的二維碼下載。
視頻等資源: 掃描封底刮刮卡中的二維碼,再掃描書中相應章節(jié)中的二維碼,可以在線學習。
本書適合作為高等院校計算機、軟件工程、電子商務等專業(yè)的Web應用程序設計課程的教材,也可以作為PHP愛好者的學習參考書。
本書第1章、第2章、第5章、第9~12章由徐輝編寫,第3章、第4章、第6章、第8章由盧守東編寫,第7章由蔣曹清和徐輝編寫。全書后由徐輝統(tǒng)稿。
本書在編寫過程中,得到作者所在單位和清華大學出版社的大力支持與幫助,在此一并表示衷心的感謝。
由于作者水平有限,時間倉促,書中難免存在不足之處,歡迎廣大同行和讀者批評指正。
作者2021年5月
第1章
PHP入門和開發(fā)環(huán)境構建1
1.1Web應用程序工作原理1
1.1.1Web體系結構1
1.1.2動態(tài)Web的工作模式2
1.2PHP概述5
1.3PHP開發(fā)環(huán)境的構建6
1.3.1下載和安裝XAMPP軟件包6
1.3.2啟動和停止服務7
1.3.3測試PHP8
1.3.4修改服務器的配置文件8
1.4PHP程序的開發(fā)過程10
1.4.1在Dreamweaver CC中編輯PHP程序10
1.4.2運行PHP程序10
1.5上機實踐11
習題111
第2章
PHP語言基礎13
2.1PHP程序基本語法13
2.2PHP數(shù)據(jù)類型14
2.2.1標量數(shù)據(jù)類型14
2.2.2復合數(shù)據(jù)類型16
2.2.3特殊數(shù)據(jù)類型16
2.3常量和變量16
2.3.1常量16
2.3.2變量18
2.4運算符和表達式18
2.4.1運算符19
2.4.2運算符優(yōu)先級22
2.5PHP流程控制語句22
2.5.1條件語句23
2.5.2循環(huán)語句25
2.5.3跳轉語句27
2.6PHP數(shù)組28
2.6.1創(chuàng)建一維數(shù)組28
2.6.2創(chuàng)建二維數(shù)組29
2.6.3訪問數(shù)組元素和遍歷數(shù)組30
2.6.4常用的數(shù)組操作函數(shù)31
2.7自定義函數(shù)及其使用33
2.7.1自定義函數(shù)的定義33
2.7.2自定義函數(shù)的調用33
2.7.3自定義函數(shù)的參數(shù)傳遞34
2.7.4變量的作用域35
2.8引用文件36
2.9上機實踐38
習題238
第3章
PHP常用內置函數(shù)41
3.1數(shù)學函數(shù)41
3.2字符串處理函數(shù)45
3.3日期和時間處理函數(shù)49
3.4文件操作函數(shù)54
3.5檢測函數(shù)63
3.6上機實踐67
習題368
第4章
PHP面向對象編程69
4.1面向對象編程的基礎知識69
4.1.1面向對象編程的基本概念69
4.1.2面向對象編程的主要特征70
4.2PHP面向對象編程的基本技術71
4.2.1類的創(chuàng)建71
4.2.2對象的使用73
4.2.3構造函數(shù)的使用74
4.2.4析構函數(shù)的使用75
4.2.5類屬性的訪問控制76
4.2.6類方法的訪問控制79
4.3PHP面向對象編程的高級技術81
4.3.1類的繼承81
4.3.2方法的重載85
4.3.3對象的克隆87
4.3.4對象的串行化88
4.3.5靜態(tài)成員的使用90
4.3.6抽象方法與抽象類的使用92
4.3.7接口的使用93
4.3.8類方法的調用處理95
4.3.9類文件的自動加載96
4.4上機實踐97
習題497
第5章
PHP與瀏覽器交互編程99
5.1Web表單數(shù)據(jù)的提交99
5.1.1使用GET方式提交表單數(shù)據(jù)99
5.1.2使用POST方式提交表單數(shù)據(jù)101
5.1.3兩種提交方式的差別102
5.2PHP接收Web表單數(shù)據(jù)102
5.2.1利用$_GET全局變量接收表單數(shù)據(jù)102
5.2.2利用$_POST全局變量接收表單數(shù)據(jù)102
5.2.3利用$_REQUEST全局變量接收表單數(shù)據(jù)103
5.3文件上傳105
5.3.1上傳文件的設置105
5.3.2$_FILES全局變量105
5.3.3文件上傳的實現(xiàn)106
5.4網(wǎng)頁重定向109
5.5PHP的Session會話112
5.5.1Session概述112
5.5.2Session的配置113
5.5.3啟動Session114
5.5.4使用Session115
5.5.5刪除和銷毀Session116
5.5.6Session應用實例118
5.6PHP的Cookie技術122
5.6.1Cookie概述122
5.6.2創(chuàng)建Cookie123
5.6.3讀取Cookie125
5.6.4刪除Cookie126
5.6.5Cookie數(shù)組126
5.6.6Cookie應用實例127
5.7上機實踐130
習題5131
第6章
PHP訪問MySQL數(shù)據(jù)庫134
6.1MySQL的應用基礎134
6.1.1MySQL的啟動與關閉134
6.1.2MySQL數(shù)據(jù)庫的管理134
6.1.3常用的SQL語句144
6.2PHP訪問MySQL數(shù)據(jù)庫的基本技術146
6.2.1基本步驟146
6.2.2建立與數(shù)據(jù)庫服務器的連接146
6.2.3選擇數(shù)據(jù)庫148
6.2.4設置字符集149
6.2.5執(zhí)行數(shù)據(jù)庫操作149
6.2.6關閉與數(shù)據(jù)庫服務器的連接161
6.3PHP訪問MySQL數(shù)據(jù)庫的綜合實例162
6.4上機實踐167
習題6167
第7章
JavaScript程序設計169
7.1JavaScript概述169
7.1.1JavaScript的起源169
7.1.2JavaScript的主要特點170
7.2在HTML文檔中使用JavaScript程序170
7.2.1在網(wǎng)頁中直接嵌入JavaScript程序171
7.2.2在網(wǎng)頁中鏈接外部JavaScript文件171
7.2.3將JavaScript作為HTML元素的屬性值來使用172
7.3JavaScript語言基礎173
7.3.1數(shù)據(jù)類型173
7.3.2變量174
7.3.3運算符和表達式175
7.4JavaScript流程控制語句177
7.4.1條件分支語句177
7.4.2循環(huán)語句179
7.4.3跳轉語句181
7.5JavaScript函數(shù)181
7.5.1定義自定義函數(shù)182
7.5.2調用自定義函數(shù)182
7.6JavaScript內置對象183
7.6.1String對象183
7.6.2Math對象184
7.6.3Date對象186
7.7瀏覽器對象模型188
7.7.1window對象188
7.7.2location對象192
7.8文檔對象模型193
7.8.1DOM概述193
7.8.2document對象194
7.8.3form對象195
7.8.4引用HTML元素對象196
7.9JavaScript事件處理197
7.9.1HTML的常用事件197
7.9.2事件處理編程197
7.9.3表單事件處理198
7.10上機實踐200
習題7200
第8章
jQuery和jQuery EasyUI框架203
8.1jQuery入門203
8.1.1jQuery概述203
8.1.2jQuery的下載204
8.1.3jQuery的使用205
8.2jQuery選擇器207
8.2.1基本選擇器207
8.2.2層次選擇器209
8.2.3表單選擇器212
8.2.4過濾選擇器216
8.3jQuery元素操作220
8.3.1元素值的獲取與設置220
8.3.2元素內容的獲取與設置222
8.3.3元素屬性的獲取與設置224
8.3.4元素的插入226
8.3.5元素的刪除228
8.3.6元素的遍歷229
8.4jQuery事件處理231
8.4.1jQuery常用事件231
8.4.2jQuery事件方法232
8.4.3jQuery事件的綁定、解綁與觸發(fā)234
8.5jQuery EasyUI基本應用237
8.5.1jQuery EasyUI簡介237
8.5.2jQuery EasyUI基本用法238
8.5.3利用jQuery EasyUI訪問MySQL數(shù)據(jù)庫243
8.6上機實踐246
習題8246
第9章
AJAX技術和PHP的結合248
9.1AJAX技術的編程模型248
9.1.1創(chuàng)建XMLHttpRequest對象248
9.1.2向Web服務器發(fā)送HTTP請求249
9.1.3接收Web服務器數(shù)據(jù)250
9.2基于jQuery的AJAX編程252
9.2.1load()方法252
9.2.2$.get()方法253
9.2.3$.post()方法254
9.2.4$.getJSON方法255
9.2.5$.ajax()方法257
9.3AJAX異步訪問MySQL數(shù)據(jù)庫259
9.4結合jQuery EasyUI和AJAX訪問MySQL數(shù)據(jù)庫261
9.4.1用AJAX方式驗證和登錄系統(tǒng)實例261
9.4.2結合jQuery EasyUI和AJAX訪問MySQL數(shù)
據(jù)庫實例262
9.5上機實踐264
習題9264
第10章
Vue.js框架基礎266
10.1Vue.js使用入門266
10.1.1Vue.js概述266
10.1.2下載和使用Vue.js267
10.2Vue數(shù)據(jù)綁定268
10.2.1Vue實例、數(shù)據(jù)和方法268
10.2.2插值表達式270
10.2.3Vue屬性綁定271
10.2.4Vue雙向數(shù)據(jù)綁定272
10.2.5Vue計算屬性272
10.2.6Vue生命周期275
10.3指令276
10.3.1條件渲染指令277
10.3.2列表渲染vfor指令278
10.4事件處理280
10.4.1von指令280
10.4.2事件修飾符281
10.5表單控件與vmodel指令283
10.5.1vmodel指令基本用法283
10.5.2vmodel修飾符286
10.6組件286
10.6.1組件的注冊和使用287
10.6.2用props選項向子組件傳遞數(shù)據(jù)289
10.6.3子組件向父組件傳遞數(shù)據(jù)290
10.6.4用slot分發(fā)內容292
10.7Vue.js過渡和動畫效果295
10.7.1使用CSS過渡實現(xiàn)動畫295
10.7.2使用第三方animate.css庫實現(xiàn)動畫298
10.7.3結合JavaScript與Velocity.js庫實現(xiàn)動畫299
10.7.4多個元素或組件的過渡301
10.7.5列表過渡304
10.8自定義指令306
10.8.1自定義全局指令306
10.8.2自定義局部指令307
10.9Vue.js路由308
10.9.1路由的加載和基本用法308
10.9.2動態(tài)路由和參數(shù)傳遞310
10.9.3命名路由和命名視圖312
10.10Vue.js的AJAX314
10.10.1安裝和引入axios314
10.10.2axios的使用方法315
10.11上機實踐317
習題10321
第11章
jQuery項目實戰(zhàn)課堂考勤系統(tǒng)的開發(fā)325
11.1項目介紹325
11.2PHP網(wǎng)站環(huán)境326
11.3數(shù)據(jù)庫設計326
11.4后臺管理子系統(tǒng)329
11.4.1登錄329
11.4.2后臺管理首頁面329
11.4.3班級管理330
11.4.4課程管理331
11.4.5學生管理332
11.4.6教師管理333
11.4.7選課管理334
11.4.8清空數(shù)據(jù)335
11.4.9填寫授課時間記錄335
11.4.10在線點名337
11.4.11查詢考勤情況338
11.4.12考勤統(tǒng)計338
11.5學生端功能339
11.5.1學生登錄339
11.5.2上課簽到339
11.5.3下課簽離339
11.5.4考勤查詢340
11.5.5修改密碼341
11.6上機實踐341
第12章
Vue項目實戰(zhàn)信息管理系統(tǒng)的開發(fā)342
12.1項目介紹342
12.2后端PHP網(wǎng)站343
12.2.1PHP網(wǎng)站環(huán)境343
12.2.2數(shù)據(jù)庫設計343
12.2.3信息管理服務程序344
12.3構建Vue項目開發(fā)環(huán)境345
12.4使用Vue.js開發(fā)信息管理后臺子系統(tǒng)346
12.4.1用VueCLI腳手架工具創(chuàng)建后臺管理項目346
12.4.2配置Vue路由和Vuex348
12.4.3前端API程序350
12.4.4登錄頁面350
12.4.5后臺首頁面351
12.4.6用戶管理頁面352
12.4.7部門管理頁面353
12.4.8信息類別管理頁面354
12.4.9信息管理頁面355
12.5使用Vue.js開發(fā)信息瀏覽前臺子系統(tǒng)357
12.5.1創(chuàng)建信息瀏覽前臺子系統(tǒng)項目357
12.5.2API服務程序設計357
12.5.3信息瀏覽前臺頁面358
12.6上機實踐359
參考文獻360