關(guān)于我們
書單推薦
新書推薦
|
PHP編程基礎(chǔ)與實(shí)例教程(第2版)
PHP簡(jiǎn)單易學(xué)且功能強(qiáng)大,是開發(fā)Web應(yīng)用程序理想的腳本語(yǔ)言。本書由淺入深、循序漸進(jìn),系統(tǒng)地介紹了PHP的相關(guān)知識(shí)及其在Web應(yīng)用程序開發(fā)中的實(shí)際應(yīng)用,并通過具體案例,使讀者鞏固所學(xué)知識(shí),更好地進(jìn)行開發(fā)實(shí)踐。本書共分為13章,涵蓋了PHP開發(fā)環(huán)境的搭建、PHP語(yǔ)法、FORM表單、數(shù)據(jù)庫(kù)設(shè)計(jì)、MySQL數(shù)據(jù)庫(kù)、PHP與數(shù)據(jù)庫(kù)連接、會(huì)話控制、界面設(shè)計(jì)等內(nèi)容。
本書內(nèi)容豐富、講解深入,適用于初、中級(jí)PHP用戶,可以作為各類院校相關(guān)專業(yè)的教材,同時(shí)也是一本面向廣大PHP愛好者的PHP實(shí)用參考書。
1、配套資料全:微視頻、源代碼、貫穿全書的案例、習(xí)題答案等
2、實(shí)用性、實(shí)效性都很強(qiáng),適合初學(xué)者入門與提高的需要
3、與同類書籍相比,對(duì)基本概念的講解透徹,條理清晰,步驟詳細(xì),非常適合自學(xué)
孔祥盛,長(zhǎng)期從事網(wǎng)絡(luò)數(shù)據(jù)庫(kù)技術(shù)、網(wǎng)頁(yè)設(shè)計(jì)與制作、PHP教學(xué)與培訓(xùn)等工作,具有豐富的教學(xué)與研究開發(fā)經(jīng)驗(yàn),積累了大量的開發(fā)案例。編寫的PHP教材語(yǔ)言通俗易懂,言簡(jiǎn)意賅,用極其短小精干的案例講述技術(shù)知識(shí),受到廣大初學(xué)者的推崇。
第1章 PHP入門 1
1.1 PHP概況 1
1.1.1 PHP的優(yōu)勢(shì) 1
1.1.2 PHP的應(yīng)用領(lǐng)域 2
1.1.3 HTML內(nèi)嵌式的腳本語(yǔ)言 2
1.2 PHP腳本程序工作流程 3
1.2.1 Web瀏覽器 3
1.2.2 HTML代碼 3
1.2.3 PHP預(yù)處理器 3
1.2.4 Web服務(wù)器 3
1.2.5 HTTP協(xié)議 3
1.2.6 數(shù)據(jù)庫(kù)服務(wù)器 4
1.2.7 PHP程序的工作流程 5
1.3 PHP服務(wù)器的構(gòu)建 6
1.3.1 服務(wù)器安裝前的準(zhǔn)備工作 6
1.3.2 安裝服務(wù)器 8
1.3.3 啟動(dòng)與停止服務(wù) 10
1.3.4 第一個(gè)PHP程序 12
1.3.5 配置服務(wù)器 12
習(xí)題 17
第2章 PHP基礎(chǔ) 18
2.1 PHP代碼基本語(yǔ)法 18
2.1.1 PHP開始標(biāo)記與結(jié)束標(biāo)記 18
2.1.2 PHP注釋 20
2.1.3 PHP語(yǔ)句及語(yǔ)句塊 21
2.2 PHP程序的組成 22
2.2.1 關(guān)于PHP數(shù)據(jù) 23
2.2.2 PHP數(shù)據(jù)類型 23
2.2.3 瀏覽器端的數(shù)據(jù)采集 28
2.2.4 PHP程序的數(shù)據(jù)采集 29
2.2.5 PHP數(shù)據(jù)處理 29
2.2.6 PHP數(shù)據(jù)的輸出 30
2.3 編碼規(guī)范 32
2.3.1 書寫規(guī)范 32
2.3.2 命名規(guī)范 33
2.3.3 為代碼添加注釋 34
習(xí)題 34
第3章 PHP表達(dá)式 35
3.1 常量 35
3.1.1 自定義常量 35
3.1.2 常量的內(nèi)存分配 36
3.1.3 預(yù)定義常量 36
3.2 變量 37
3.2.1 變量的基本概念 37
3.2.2 變量的內(nèi)存分配 38
3.2.3 變量的賦值方式 39
3.2.4 可變變量 41
3.3 有關(guān)變量或常量狀態(tài)的函數(shù) 41
3.3.1 數(shù)據(jù)類型查看函數(shù) 41
3.3.2 檢查常量或變量是否定義函數(shù) 42
3.3.3 取消變量定義unset()函數(shù) 44
3.3.4 檢查變量是否為“空” 45
3.3.5 數(shù)據(jù)類型檢查函數(shù) 48
3.4 PHP運(yùn)算符 49
3.4.1 算術(shù)運(yùn)算符 49
3.4.2 遞增/遞減運(yùn)算符 49
3.4.3 賦值運(yùn)算符 50
3.4.4 比較運(yùn)算符 51
3.4.5 邏輯運(yùn)算符 51
3.4.6 字符串連接運(yùn)算符 52
3.4.7 錯(cuò)誤抑制運(yùn)算符 53
3.4.8 條件運(yùn)算符 53
3.4.9 類型運(yùn)算符 54
3.4.10 執(zhí)行運(yùn)算符 54
3.4.11 位運(yùn)算符 54
3.4.12 運(yùn)算符優(yōu)先級(jí) 55
3.5 數(shù)據(jù)類型的轉(zhuǎn)換 55
3.5.1 類型自動(dòng)轉(zhuǎn)換 56
3.5.2 類型強(qiáng)制轉(zhuǎn)換 58
習(xí)題 60
第4章 PHP流程控制語(yǔ)句 65
4.1 條件控制結(jié)構(gòu) 65
4.1.1 if語(yǔ)句 65
4.1.2 if…else語(yǔ)句 66
4.1.3 switch語(yǔ)句 68
4.2 循環(huán)結(jié)構(gòu) 70
4.2.1 while循環(huán)語(yǔ)句 70
4.2.2 do…while循環(huán)語(yǔ)句 70
4.2.3 for循環(huán)語(yǔ)句 71
4.2.4 循環(huán)結(jié)構(gòu)應(yīng)用 72
4.3 程序跳轉(zhuǎn)和終止語(yǔ)句 73
4.3.1 continue語(yǔ)句 73
4.3.2 break語(yǔ)句 74
4.3.3 終止PHP程序運(yùn)行 74
習(xí)題 75
第5章 PHP數(shù)組 77
5.1 數(shù)組的基本概念 77
5.1.1 為什么引入數(shù)組 77
5.1.2 數(shù)組的分類 78
5.2 一維數(shù)組的創(chuàng)建 78
5.2.1 直接將變量聲明為數(shù)組元素 78
5.2.2 使用array()語(yǔ)言結(jié)構(gòu)創(chuàng)建數(shù)組 80
5.2.3 創(chuàng)建數(shù)組的注意事項(xiàng) 80
5.2.4 數(shù)組元素“值”的訪問 81
5.3 二維數(shù)組 83
5.3.1 二維數(shù)組的創(chuàng)建 84
5.3.2 二維數(shù)組元素“值”的訪問 85
5.4 數(shù)組處理函數(shù)及應(yīng)用 86
5.4.1 快速創(chuàng)建數(shù)組的函數(shù) 86
5.4.2 數(shù)組統(tǒng)計(jì)函數(shù) 88
5.4.3 數(shù)組指針函數(shù) 91
5.4.4 數(shù)組和變量間的轉(zhuǎn)換函數(shù) 96
5.4.5 數(shù)組遍歷語(yǔ)言結(jié)構(gòu) 98
5.4.6 數(shù)組檢索函數(shù) 101
5.4.7 數(shù)組排序函數(shù) 103
5.4.8 數(shù)組與數(shù)據(jù)結(jié)構(gòu) 106
5.4.9 數(shù)組集合運(yùn)算函數(shù) 107
習(xí)題 109
第6章 PHP的數(shù)據(jù)采集 113
6.1 瀏覽器端數(shù)據(jù)的提交方式 113
6.1.1 GET提交方式 113
6.1.2 POST提交方式 115
6.1.3 GET和POST混合提交方式 116
6.1.4 兩種提交方式的比較 116
6.2 相對(duì)路徑和絕對(duì)路徑 117
6.2.1 絕對(duì)路徑 117
6.2.2 相對(duì)路徑 117
6.2.3 相對(duì)路徑其他概念 118
6.3 使用FORM表單實(shí)現(xiàn)瀏覽器端的
數(shù)據(jù)采集 118
6.3.1 表單標(biāo)簽
119
6.3.2 表單控件 119
6.3.3 在表單控件中使用數(shù)組 123
6.3.4 表單按鈕 123
6.3.5 FORM表單綜合應(yīng)用 125
6.4 使用$_GET和$_POST“采集”
表單數(shù)據(jù) 127
6.5 上傳文件的“數(shù)據(jù)采集” 128
6.5.1 與上傳相關(guān)的配置 128
6.5.2 PHP文件上傳流程 129
6.5.3 預(yù)定義變量$_FILES 131
6.5.4 PHP文件上傳的實(shí)現(xiàn) 131
6.6 Web服務(wù)器端其他數(shù)據(jù)采集方法 133
6.6.1 預(yù)定義變量$_REQUEST 133
6.6.2 預(yù)定義變量$_SERVER 134
習(xí)題 135
第7章 自定義函數(shù) 137
7.1 PHP文件間的引用 137
7.1.1 include語(yǔ)言結(jié)構(gòu) 137
7.1.2 require與include語(yǔ)言結(jié)構(gòu)的
比較 138
7.1.3 include_once和require_once
語(yǔ)言結(jié)構(gòu) 139
7.2 函數(shù)概述 140
7.2.1 函數(shù)的概念 140
7.2.2 函數(shù)的分類 140
7.3 自定義函數(shù) 140
7.3.1 自定義函數(shù)的定義 141
7.3.2 自定義函數(shù)的聲明和調(diào)用 143
7.3.3 自定義函數(shù)的參數(shù)賦值 143
7.3.4 變量的作用域和global關(guān)鍵字 147
7.3.5 變量的生存周期和static關(guān)鍵字 149
7.3.6 變量函數(shù) 152
7.4 自定義函數(shù)綜合示例 153
7.5 return語(yǔ)言結(jié)構(gòu) 154
習(xí)題 156
第8章 MySQL數(shù)據(jù)庫(kù) 160
8.1 數(shù)據(jù)庫(kù)概述 160
8.1.1 數(shù)據(jù)庫(kù) 160
8.1.2 關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)
(RDBMS) 161
8.1.3 結(jié)構(gòu)化查詢語(yǔ)言(SQL) 161
8.2 數(shù)據(jù)庫(kù)規(guī)范化設(shè)計(jì) 161
8.2.1 E-R模型 162
8.2.2 主鍵(Primary Key) 164
8.2.3 實(shí)體間的關(guān)系與外鍵(Foreign
Key) 165
8.2.4 約束(Constraint) 166
8.3 MySQL簡(jiǎn)介 167
8.3.1 MySQL服務(wù)的啟動(dòng) 167
8.3.2 MySQL客戶機(jī) 167
8.3.3 連接MySQL服務(wù)器 169
8.3.4 MyISAM和InnoDB存儲(chǔ)引擎 170
8.4 字符集 172
8.4.1 字符集與字符序 173
8.4.2 MySQL字符集與字符序 173
8.4.3 MySQL的字符集轉(zhuǎn)換過程 175
8.4.4 設(shè)置MySQL字符集 176
8.4.5 SQL腳本文件 176
8.5 MySQL數(shù)據(jù)庫(kù)管理 177
8.5.1 創(chuàng)建數(shù)據(jù)庫(kù) 177
8.5.2 選擇當(dāng)前操作的數(shù)據(jù)庫(kù) 177
8.5.3 顯示數(shù)據(jù)庫(kù)結(jié)構(gòu) 178
8.5.4 刪除數(shù)據(jù)庫(kù) 178
8.6 數(shù)據(jù)庫(kù)表的管理 178
8.6.1 數(shù)據(jù)類型 178
8.6.2 MySQL中的附加屬性 179
8.6.3 創(chuàng)建數(shù)據(jù)庫(kù)表 180
8.6.4 顯示數(shù)據(jù)庫(kù)表結(jié)構(gòu) 182
8.6.5 刪除數(shù)據(jù)庫(kù)表結(jié)構(gòu) 183
8.7 表記錄的更新操作 183
8.7.1 表記錄的添加 183
8.7.2 表記錄的修改 185
8.7.3 表記錄的刪除 186
8.8 表記錄的查詢操作 186
8.8.1 指定字段列表及列別名 187
8.8.2 使用謂詞限制記錄的行數(shù) 187
8.8.3 使用from子句指定多個(gè)數(shù)據(jù)源 188
8.8.4 使用where子句過濾記錄 191
8.8.5 使用order by子句對(duì)記錄排序 193
8.8.6 使用聚合函數(shù)返回匯總值 194
8.8.7 使用group by子句對(duì)記錄分組
統(tǒng)計(jì) 194
8.8.8 使用having子句提取符合條件
的分組 194
8.9 MySQL特殊字符序列 195
習(xí)題 196
第9章 PHP與MySQL數(shù)據(jù)庫(kù) 200
9.1 PHP中常用的MySQL操作函數(shù) 200
9.1.1 連接MySQL服務(wù)器 200
9.1.2 設(shè)置數(shù)據(jù)庫(kù)字符集 201
9.1.3 關(guān)閉MySQL服務(wù)器連接 201
9.1.4 選擇當(dāng)前操作的數(shù)據(jù)庫(kù) 201
9.1.5 發(fā)送SQL語(yǔ)句或MySQL命令 202
9.1.6 遍歷結(jié)果集中的數(shù)據(jù) 204
9.1.7 MySQL服務(wù)器連接與關(guān)閉最佳
時(shí)機(jī) 206
9.1.8 MySQL服務(wù)器連接與關(guān)閉函數(shù)的
制作 207
9.2 PHP中其他MySQL操作函數(shù) 207
9.2.1 數(shù)據(jù)庫(kù)表操作函數(shù) 207
9.2.2 選擇當(dāng)前操作的數(shù)據(jù)庫(kù)并發(fā)送
SQL語(yǔ)句 208
9.2.3 表字段操作函數(shù) 209
9.2.4 其他常用函數(shù) 210
9.3 用戶注冊(cè)系統(tǒng)的實(shí)現(xiàn) 212
9.3.1 用戶注冊(cè)系統(tǒng)文件組織結(jié)構(gòu) 212
9.3.2 用戶注冊(cè)界面的實(shí)現(xiàn) 212
9.3.3 數(shù)據(jù)庫(kù)的實(shí)現(xiàn) 214
9.3.4 制作用戶注冊(cè)系統(tǒng)所需的函數(shù) 214
9.3.5 用戶注冊(cè)功能的實(shí)現(xiàn) 214
9.3.6 用戶登錄頁(yè)面的實(shí)現(xiàn) 217
9.3.7 用戶登錄功能的簡(jiǎn)單實(shí)現(xiàn) 217
9.3.8 功能測(cè)試 218
9.4 SQL注入 219
習(xí)題 220
第10章 新聞發(fā)布系統(tǒng)的開發(fā) 222
10.1 新聞發(fā)布系統(tǒng)的開發(fā)流程 222
10.1.1 MIS的開發(fā)流程 222
10.1.2 新聞發(fā)布系統(tǒng)的開發(fā)流程 222
10.2 新聞發(fā)布系統(tǒng)的系統(tǒng)規(guī)劃 222
10.2.1 新聞發(fā)布系統(tǒng)的目標(biāo) 223
10.2.2 新聞發(fā)布系統(tǒng)的可行性分析 223
10.2.3 新聞發(fā)布系統(tǒng)的項(xiàng)目進(jìn)度表 223
10.2.4 新聞發(fā)布系統(tǒng)的人員分工 223
10.3 新聞發(fā)布系統(tǒng)的系統(tǒng)分析 223
10.3.1 新聞發(fā)布系統(tǒng)的功能需求 224
10.3.2 新聞發(fā)布系統(tǒng)的技術(shù)需求 225
10.3.3 新聞發(fā)布系統(tǒng)中使用的模型 226
10.3.4 新聞發(fā)布系統(tǒng)的E-R模型 226
10.3.5 新聞發(fā)布系統(tǒng)的數(shù)據(jù)流程圖 227
10.3.6 數(shù)據(jù)字典(Data Dictionary) 230
10.4 新聞發(fā)布系統(tǒng)的系統(tǒng)設(shè)計(jì) 231
10.4.1 系統(tǒng)流程圖 231
10.4.2 程序流程圖 232
10.4.3 數(shù)據(jù)庫(kù)規(guī)范化設(shè)計(jì) 233
10.4.4 圖形用戶界面設(shè)計(jì) 233
10.5 新聞發(fā)布系統(tǒng)系統(tǒng)實(shí)施 234
10.5.1 文件組織結(jié)構(gòu) 234
10.5.2 數(shù)據(jù)庫(kù)的實(shí)施 235
10.5.3 新聞管理和評(píng)論管理功能的
實(shí)施 235
10.6 分頁(yè)原理及實(shí)現(xiàn) 246
10.6.1 分頁(yè)原理 246
10.6.2 PHP分頁(yè)的最簡(jiǎn)單實(shí)現(xiàn) 247
10.6.3 帶有“分頁(yè)導(dǎo)航條”分頁(yè)的
實(shí)現(xiàn) 247
10.6.4 顯示分頁(yè)導(dǎo)航條的函數(shù)制作 249
10.7 新聞發(fā)布系統(tǒng)的軟件測(cè)試 251
10.8 新聞發(fā)布系統(tǒng)的系統(tǒng)支持 251
習(xí)題 252
第11章 PHP會(huì)話控制 253
11.1 HTTP無(wú)狀態(tài)特性 253
11.1.1 HTTP通信機(jī)制 253
11.1.2 HTTP無(wú)狀態(tài)與TCP長(zhǎng)連接
之間的關(guān)系 255
11.1.3 HTTP請(qǐng)求信息 255
11.1.4 HTTP響應(yīng)信息 257
11.2 頁(yè)面間的參數(shù)傳遞 258
11.2.1 利用重定向?qū)崿F(xiàn)參數(shù)傳遞 259
11.2.2 使用JavaScript實(shí)現(xiàn)重定向 260
11.2.3 使用PHP實(shí)現(xiàn)重定向 260
11.3 Cookie會(huì)話技術(shù) 261
11.3.1 瀏覽器的Cookie設(shè)置 261
11.3.2 Cookie的工作原理 261
11.3.3 Cookie的內(nèi)容 262
11.3.4 Cookie分類及典型應(yīng)用 263
11.3.5 使用Cookie的步驟 264
11.3.6 創(chuàng)建Cookie 265
11.3.7 預(yù)定義變量$_COOKIE 266
11.3.8 刪除瀏覽器端的Cookie 268
11.3.9 新聞發(fā)布系統(tǒng)用戶管理功能的
實(shí)現(xiàn)(一) 268
11.3.10 Cookie數(shù)組的使用 271
11.3.11 使用Cookie的其他注意事項(xiàng) 272
11.4 Session會(huì)話技術(shù) 273
11.4.1 Session的工作原理 273
11.4.2 使用Session的步驟 274
11.4.3 php.ini有關(guān)Session的配置 276
11.4.4 開啟Session 276
11.4.5 預(yù)定義變量$_SESSION 277
11.4.6 刪除和銷毀Session 278
11.4.7 Session的綜合應(yīng)用 278
11.4.8 Session ID、Session name和SID 280
11.4.9 禁用Cookie后Session的實(shí)現(xiàn) 283
11.4.10 Session和Cookie的對(duì)比 284
11.4.11 新聞發(fā)布系統(tǒng)用戶管理功能的
實(shí)現(xiàn)(二) 285
11.4.12 新聞發(fā)布系統(tǒng)權(quán)限控制的實(shí)現(xiàn) 288
11.4.13 使用Session數(shù)組模擬購(gòu)物車
功能 290
11.5 header()函數(shù)的使用 291
11.5.1 頁(yè)面重定向 292
11.5.2 創(chuàng)建Cookie 293
11.5.3 服務(wù)器響應(yīng)內(nèi)容的控制 293
11.5.4 完善新聞發(fā)布系統(tǒng)文件下載功能 297
11.5.5 瀏覽器緩存的遠(yuǎn)程控制 299
11.5.6 常用的瀏覽器緩存控制函數(shù) 303
習(xí)題 305
第12章 字符串處理 307
12.1 字符串的指定方法 307
12.1.1 使用單引號(hào)指定字符串 307
12.1.2 使用雙引號(hào)指定字符串 307
12.1.3 使用定界符指定字符串 309
12.1.4 字符串中的字符處理 310
12.2 字符串處理函數(shù) 310
12.2.1 字符串修剪函數(shù) 310
12.2.2 字符串長(zhǎng)度函數(shù) 320
12.2.3 子字符串操作函數(shù) 322
12.2.4 字符串比較函數(shù) 326
12.2.5 字符串連接和分割函數(shù) 327
12.2.6 字符串替換函數(shù) 328
12.2.7 URL處理函數(shù) 329
12.2.8 其他常用的字符串函數(shù) 334
12.3 新聞發(fā)布系統(tǒng)中的字符串處理函數(shù)
的應(yīng)用 335
12.3.1 刪除模糊查詢中關(guān)鍵字兩邊的
空格 336
12.3.2 修改文件下載功能的代碼 336
12.3.3 修改發(fā)表評(píng)論功能的代碼 336
12.3.4 優(yōu)化新聞列表顯示功能的代碼 337
12.3.5 模糊查詢時(shí)關(guān)鍵字以加粗傾斜
格式顯示 337
12.3.6 優(yōu)化分頁(yè)函數(shù)代碼 338
習(xí)題 339
第13章 新聞發(fā)布系統(tǒng)的頁(yè)面
美工 343
13.1 JavaScript腳本語(yǔ)言 343
13.2 FCKeditor在線編輯器 344
13.2.1 FCKeditor使用前的準(zhǔn)備工作 344
13.2.2 FCKeditor類的成員變量和成員
方法 345
13.2.3 FCKeditor的高級(jí)配置 345
13.2.4 FCKeditor在新聞發(fā)布系統(tǒng)中的
應(yīng)用 347
13.2.5 FCKeditor的文件管理 349
13.2.6 FCKeditor瘦身 351
13.3 新聞發(fā)布系統(tǒng)頁(yè)面布局的實(shí)現(xiàn) 351
13.3.1 DIV+CSS概述 352
13.3.2 界面布局圖 352
13.3.3 使用DIV實(shí)現(xiàn)頁(yè)面布局 353
13.3.4 準(zhǔn)備圖片素材 354
13.3.5 CSS熱身 354
13.3.6 header層的實(shí)現(xiàn) 357
13.3.7 pagebody層的實(shí)現(xiàn) 360
13.3.8 footer層的實(shí)現(xiàn) 360
13.4 新聞發(fā)布系統(tǒng)靜態(tài)和動(dòng)態(tài)頁(yè)面的
嵌入 361
13.4.1 將用戶管理功能嵌入到login層 361
13.4.2 修改menu層代碼 361
13.4.3 將主要功能嵌入到
mainfunction層 363
13.4.4 sidebar層和mainbody層的高度
自適應(yīng)功能 367
13.4.5 防止圖片太寬撐破mainbody層 369
習(xí)題 369
參考文獻(xiàn) 370
你還可能感興趣
我要評(píng)論
|