PHP從入門到精通(第5版)

PHP從入門到精通(第5版)

《PHP從入門到精通(第5版)》是清華大學出版社於2019年12月1日出版的圖書 ,作者是明日科技。

基本介紹

  • 中文名:PHP從入門到精通(第5版)
  • 作者:明日科技
  • 出版時間:2019年12月1日
  • 出版社:清華大學出版社
  • ISBN:9787302541394
  • 定價:79.80 元
  • 印次:5-2
  • 印刷日期:2020.01.14 
內容簡介,圖書目錄,

內容簡介

《PHP從入門到精通(第5版)》從初學者角度出發,通過通俗易懂的語言、豐富多彩的實例,詳細介紹了使用PHP進行網路開發應該掌握的各方面技術。全書共分為4篇25章,其中,基礎知識篇包括初識PHP、PHP環境搭建和開發工具、PHP語言基礎、流程控制語句、字元串操作、正則表達式、PHP數組、PHP與Web頁面互動、PHP與JavaScript互動、日期和時間;核心技術篇包括Cookie與Session、圖形圖像處理技術、檔案系統、面向對象、PHP加密技術、MySQL資料庫基礎、phpMyAdmin圖形化管理工具、PHP操作MySQL資料庫、PDO資料庫抽象層、ThinkPHP框架;高級套用篇包括Smarty模板技術、PHP與XML技術、PHP與Ajax技術;項目實戰篇包括套用Smarty模板開發電子商務網站、套用ThinkPHP框架開發編程e學網等內容。

圖書目錄

第1篇基礎知識
第1章初識PHP2
視頻講解:23分鐘
1.1PHP概述3
1.1.1什麼是PHP3
1.1.2PHP語言的優勢3
1.1.3PHP5的新特性4
1.1.4PHP的發展趨勢4
1.1.5PHP的套用領域5
1.2擴展庫5
1.3如何學好PHP8
1.4學習資源9
1.4.1常用軟體資源9
1.4.2常用網上資源10
1.4.3主要圖書網站10
1.5網站建設的基本流程10
1.6小結11
第2章 PHP環境搭建和開發工具 12
視頻講解:1小時9分鐘
2.1 在Windows下使用WampServer 13
2.1.1 PHP開發環境的安裝 13
2.1.2 PHP伺服器的啟動與停止 15
2.1.3 PHP開發環境的關鍵配置 16
2.2 在Linux下的安裝配置 19
2.2.1 安裝Apache伺服器 19
2.2.2 安裝MySQL資料庫 20
2.2.3 安裝PHP 5 21
2.3 PHP常用開發工具 23
2.4 第一個PHP實例 24
2.5 小結 26
2.6 實踐與練習 26
第3章 PHP語言基礎 27
視頻講解:2小時48分鐘
3.1 PHP的標記風格 28
3.2 PHP注釋的套用 28
3.3 PHP的數據類型 30
3.3.1 標量數據類型 30
3.3.2 複合數據類型 35
3.3.3 特殊數據類型 36
3.3.4 數據類型轉換 37
3.3.5 檢測數據類型 39
3.4 PHP常量 39
3.4.1 聲明和使用常量 39
3.4.2 預定義常量 41
3.5 PHP變數 42
3.5.1 變數聲明及使用 42
3.5.2 變數作用域 44
3.5.3 可變變數 46
3.6.4 遞增或遞減運算符 49
3.6.5 位運算符 50
3.6.9 運算符的優先權 53
3.7 PHP的表達式 54
3.8 PHP函式 55
3.8.1 定義和調用函式 55
3.8.2 在函式間傳遞參數 56
3.8.3 從函式中返回值 58
3.8.4 變數函式 58
3.9 PHP編碼規範 59
3.9.1 什麼是編碼規範 59
3.9.2 PHP書寫規則 60
3.9.3 PHP命名規則 61
3.10 小結 63
3.11 實踐與練習 63
第4章 流程控制語句 64
視頻講解:1小時8分鐘
4.1 條件控制語句 65
4.1.1 if語句 65
4.1.2 if…else語句 66
4.1.3 elseif語句 67
4.1.4 switch語句 69
4.2 循環控制語句 71
4.2.1 while循環語句 71
4.2.2 do…while循環語句 72
4.2.3 for循環語句 73
4.2.4 foreach循環語句 74
4.3 跳轉語句 75
4.3.1 break語句 75
4.3.2 continue語句 77
4.4 小結 78
4.5 實踐與練習 79
第5章 字元串操作 80
視頻講解:56分鐘
5.1 字元串的定義方法 81
5.1.1 使用單引號或雙引號定義字元串 81
5.1.2 使用定界符定義字元串 82
5.2 字元串操作 82
5.2.1 去除字元串首尾空格和特殊字元 83
5.2.2 轉義、還原字元串數據 84
5.2.3 獲取字元串的長度 87
5.2.4 截取字元串 89
5.2.5 比較字元串 90
5.2.6 檢索字元串 92
5.2.7 替換字元串 94
5.2.8 格式化字元串 97
5.2.9 分割、合成字元串 98
5.3 小結 100
5.4 實踐與練習 100
第6章 正則表達式 101
視頻講解:33分鐘
6.1 什麼是正則表達式 102
6.2 正則表達式語法規則 102
6.2.1 行定位符(^和$) 103
6.2.2 單詞分界符(\b、\B) 103
6.2.3 字元類([ ]) 103
6.2.4 選擇字元(|) 104
6.2.5 連字元(-) 104
6.2.6 排除字元([^]) 105
6.2.7 限定符(? * + {n,m}) 105
6.2.8 點號字元(.) 105
6.2.9 轉義字元(\) 106
6.2.10 反斜線(\) 106
6.2.11 括弧字元(( )) 107
6.2.12 反向引用 108
6.2.13 模式修飾符 108
6.3 PCRE兼容正則表達式函式 109
6.3.1 preg_grep( )函式 109
6.3.2 preg_match( )和preg_match_all( )函式 109
6.3.3 preg_quote( )函式 110
6.3.4 preg_replace( )函式 111
6.3.5 preg_replace_callback( )函式 112
6.3.6 preg_split( )函式 112
6.4 套用正則表達式對用戶註冊信息進行驗證 112
6.5 小結 115
6.6 實踐與練習 115
第7章 PHP數組 116
視頻講解:1小時6分鐘
7.1 什麼是數組 117
7.2 聲明數組 117
7.3 數組的類型 119
7.3.1 數字索引數組 119
7.3.2 關聯數組 119
7.4 輸出數組 120
7.5 數組的構造 121
7.5.1 一維數組 121
7.5.2 二維數組 121
7.6 遍歷數組 122
7.7 字元串與數組的轉換 124
7.8 統計數組元素個數 126
7.9 查詢數組中指定元素 127
7.10 獲取數組中最後一個元素 128
7.11 向數組中添加元素 129
7.12 刪除數組中重複元素 129
7.13 綜合運用數組函式實現多檔案上傳 130
7.14 小結 132
7.15 實踐與練習 132
第8章 PHP與Web頁面互動 133
視頻講解:1小時6分鐘
8.1 表單 134
8.1.1 創建表單 134
8.1.2 表單元素 135
8.2 在普通的Web頁中插入表單 138
8.3 獲取表單數據的兩種方法 140
8.3.1 使用POST方法提交表單 140
8.3.2 使用GET方法提交表單 141
8.4 PHP參數傳遞的常用方法 142
8.4.1 $_POST[ ]全局變數 142
8.4.2 $_GET[ ]全局變數 143
8.4.3 $_SESSION[ ]變數 143
8.5 在Web頁中嵌入PHP腳本 144
8.5.1 在HTML標記中添加PHP腳本 144
8.5.2 對表單元素的value屬性進行賦值 144
8.6 在PHP中獲取表單數據 144
8.6.1 獲取文本框、密碼域、隱藏域、按鈕、文本域的值 144
8.6.2 獲取單選按鈕的值 146
8.6.3 獲取複選框的值 146
8.6.4 獲取下拉列表框/選單列表框的值 148
8.6.5 獲取檔案域的值 150
8.7 對URL傳遞的參數進行編/解碼 151
8.7.1 對URL傳遞的參數進行編碼 151
8.7.2 對URL傳遞的參數進行解碼 152
8.8 PHP與Web表單的綜合套用 153
8.9 小結 154
8.10 實踐與練習 154
第9章 PHP與JavaScript互動 155
視頻講解:1小時4分鐘
9.1 了解JavaScript 156
9.1.1 什麼是JavaScript 156
9.1.2 JavaScript的功能 156
9.2 JavaScript語言基礎 156
9.2.1 JavaScript數據類型 157
9.2.2 JavaScript變數 157
9.2.3 JavaScript注釋 159
9.3 自定義函式 159
9.4 JavaScript流程控制語句 160
9.4.1 條件語句 160
9.4.2 循環語句 164
9.4.3 跳轉語句 166
9.5 JavaScript事件 167
9.6 調用JavaScript腳本(JavaScript腳本嵌入方式) 168
9.6.1 在HTML中嵌入JavaScript腳本 168
9.6.2 套用JavaScript事件調用自定義函式 169
9.6.3 在PHP動態網頁中引用JS檔案 169
9.6.4 解決瀏覽器不支持JavaScript的問題 171
9.7 在PHP中調用JavaScript腳本 173
9.7.1 套用JavaScript腳本驗證表單元素是否為空 173
9.7.2 套用JavaScript腳本製作二級導航選單 175
9.7.3 套用JavaScript腳本控制文本域和複選框 176
9.8 小結 179
9.9 實踐與練習 179
第10章 日期和時間 180
視頻講解:30分鐘
10.1 系統時區設定 181
10.1.1 時區劃分 181
10.1.2 時區設定 181
10.2 PHP日期和時間函式 181
10.2.1 獲得本地化時間戳 182
10.2.2 獲取當前時間戳 183
10.2.3 獲取當前日期和時間 183
10.2.4 獲取日期信息 185
10.2.5 檢驗日期的有效性 186
10.2.6 輸出格式化的日期和時間 186
10.2.7 顯示本地化的日期和時間 188
10.2.8 將日期和時間解析為UNIX時間戳 191
10.3 日期和時間的套用 192
10.3.1 比較兩個時間的大小 192
10.3.2 實現倒計時功能 192
10.3.3 計算頁面腳本的運行時間 193
10.4 小結 195
10.5 實踐與練習 195
第2篇 核心技術
第11章 Cookie與Session 198
視頻講解:1小時8分鐘
11.1 Cookie管理 199
11.1.1 了解Cookie 199
11.1.2 創建Cookie 200
11.1.3 讀取Cookie 201
11.1.4 刪除Cookie 202
11.1.5 Cookie的生命周期 203
11.2 Session管理 203
11.2.1 了解Session 203
11.2.2 創建會話 204
11.2.3 Session設定時間 206
11.2.4 通過Session判斷用戶的操作許可權 208
11.3 Session高級套用 210
11.3.1 Session臨時檔案 210
11.3.2 Session快取 211
11.3.3 Session資料庫存儲 212
11.4 小結 215
11.5 實踐與練習 215
第12章 圖形圖像處理技術 216
視頻講解:45分鐘
12.1 在PHP中載入GD庫 217
12.2 Jpgraph的安裝與配置 218
12.2.1 Jpgraph的安裝 218
12.2.2 Jpgraph的配置 218
12.3 圖形圖像的典型套用 219
12.3.1 創建一個簡單的圖像 219
12.3.2 使用GD2函式在照片上添加文字 219
12.3.3 使用圖像處理技術生成驗證碼 220
12.3.4 使用柱形圖統計圖書月銷售量 222
12.3.5 使用折線圖統計圖書月銷售額 223
12.3.6 使用3D餅形圖統計各類商品的年銷售額比率 225
12.4 小結 226
12.5 實踐與練習 226
第13章 檔案系統 228
視頻講解:49分鐘
13.1 檔案處理 229
13.1.1 打開/關閉檔案 229
13.1.2 讀寫檔案 230
13.1.3 操作檔案 235
13.2 目錄處理 236
13.2.1 打開/關閉目錄 236
13.2.2 瀏覽目錄 237
13.2.3 操作目錄 238
13.3 檔案處理的高級套用 238
13.3.1 遠程檔案的訪問 239
13.3.2 檔案指針 239
13.3.3 鎖定檔案 240
13.4 檔案上傳 241
13.4.1 配置php.ini檔案 241
13.4.2 預定義變數$_FILES 242
13.4.3 檔案上傳函式 243
13.4.4 多檔案上傳 244
13.5 小結 245
13.6 實踐與練習 245
第14章 面向對象 246
視頻講解:26分鐘
14.1 面向對象的基本概念 247
14.1.1 類 247
14.1.2 對象 247
14.1.3 面向對象編程的三大特點 248
14.2 PHP與對象 248
14.2.1 類的定義 248
14.2.2 成員方法 249
14.2.3 類的實例化 249
14.2.4 成員變數 250
14.2.5 類常量 251
14.2.6 構造方法和析構方法 252
14.2.7 繼承和多態的實現 255
14.2.8 “$this ->”和“::”的使用 257
14.2.9 數據隱藏 259
14.2.10 靜態變數(方法) 261
14.3 面向對象的高級套用 263
14.3.1 final關鍵字 263
14.3.2 抽象類 263
14.3.3 接口的使用 265
14.3.4 克隆對象 267
14.3.5 對象比較 268
14.3.6 對象類型檢測 269
14.3.7 魔術方法 270
14.4 面向對象的套用—中文字元串的截取類 274
14.5 小結 276
14.6 實踐與練習 276
第15章 PHP加密技術 277
視頻講解:23分鐘
15.1 PHP加密函式 278
15.1.1 使用crypt( )函式進行加密 278
15.1.2 使用md5( )函式進行加密 280
15.1.3 使用sha1( )函式進行加密 281
15.2 PHP加密擴展庫 282
15.2.1 Mcrypt擴展庫 282
15.2.2 Mhash擴展庫 285
15.3 小結 286
15.4 實踐與練習 286
第16章 MySQL資料庫基礎 287
視頻講解:56分鐘
16.1 MySQL概述 288
16.2 啟動和關閉MySQL伺服器 289
16.2.1 啟動MySQL伺服器 289
16.2.2 連線和斷開MySQL伺服器 289
16.3 操作MySQL資料庫 290
16.3.1 創建資料庫 290
16.3.2 選擇資料庫 291
16.3.3 查看資料庫 291
16.3.4 刪除資料庫 291
16.4 MySQL數據類型 292
16.4.1 數字類型 292
16.4.2 字元串類型 293
16.4.3 日期和時間類型 294
16.5 運算元據表 294
16.5.1 創建數據表 295
16.5.2 查看錶結構 296
16.5.3 修改表結構 297
16.5.4 重命名數據表 298
16.5.5 刪除數據表 298
16.6 數據表記錄的更新操作 299
16.6.1 數據表記錄的添加 299
16.6.2 數據表記錄的修改 300
16.6.3 數據表記錄的刪除 300
16.7 數據表記錄的查詢操作 300
16.8 MySQL中的特殊字元 304
16.9 小結 305
16.10 實踐與練習 305
第17章 phpMyAdmin圖形化管理工具 306
視頻講解:10分鐘
17.1 phpMyAdmin介紹 307
17.2 phpMyAdmin的使用 307
17.2.1 運算元據庫 307
17.2.2 運算元據表 309
17.2.3 使用SQL語句運算元據表 311
17.2.4 管理數據記錄 315
17.2.5 生成和執行MySQL資料庫腳本 316
17.3 小結 318
17.4 實踐與練習 318
第18章 PHP操作MySQL資料庫 319
視頻講解:52分鐘
18.1 PHP操作MySQL資料庫的方法 320
18.1.1 連線MySQL伺服器 320
18.1.2 選擇MySQL資料庫 321
18.1.3 執行SQL語句 322
18.1.4 將結果集返回到數組中 323
18.1.5 從結果集中獲取一行作為對象 325
18.1.6 從結果集中獲取一行作為枚舉數組 326
18.1.7 從結果集中獲取一行作為關聯數組 326
18.1.8 獲取查詢結果集中的記錄數 327
18.1.9 釋放記憶體 328
18.1.10 關閉連線 328
18.1.11 連線與關閉MySQL伺服器的最佳時機 329
18.2 管理MySQL資料庫中的數據 330
18.2.1 添加數據 330
18.2.2 編輯數據 331
18.2.3 刪除數據 333
18.2.4 批量數據操作 334
18.3 小結 335
18.4 實踐與練習 335
第19章 PDO資料庫抽象層 336
視頻講解:48分鐘
19.1 什麼是PDO 337
19.1.1 PDO概述 337
19.1.2 PDO特點 337
19.1.3 安裝PDO 337
19.2 PDO連線資料庫 338
19.2.1 PDO構造函式 338
19.2.2 DSN詳解 339
19.3 PDO中執行SQL語句 339
19.3.1 exec方法 339
19.3.2 query方法 339
19.3.3 預處理語句—prepare和execute方法 340
19.4 PDO中獲取結果集 340
19.4.1 fetch方法 340
19.4.2 fetchAll方法 342
19.4.3 fetchColumn方法 343
19.5 PDO中捕獲SQL語句中的錯誤 344
19.5.1 使用默認模式—PDO::ERRMODE_SILENT 344
19.5.2 使用警告模式—PDO::ERRMODE_WARNING 345
19.5.3 使用異常模式—PDO::ERRMODE_EXCEPTION 347
19.6 PDO中錯誤處理 348
19.6.1 errorCode方法 348
19.6.2 errorInfo方法 350
19.7 PDO中事務處理 351
19.8 PDO中存儲過程 352
19.9 小結 354
19.10 實踐與練習 354
第20章 ThinkPHP框架 355
視頻講解:2小時42分鐘
20.1 ThinkPHP簡介 356
20.1.1 ThinkPHP框架的主要特性 356
20.1.2 環境要求 356
20.1.3 下載和安裝 357
20.2 ThinkPHP基礎 358
20.2.1 目錄結構 358
20.2.2 命名規範 360
20.2.3 架構總覽 361
20.3 ThinkPHP的配置 364
20.3.1 配置基礎 364
20.3.2 配置載入配置檔案和目錄 365
20.3.3 入口配置 366
20.3.4 資源配置 368
20.3.5 調試配置 368
20.4 路由 369
20.4.1 路由概述 369
20.4.2 路由模式 370
20.4.3 路由定義 370
20.4.4 路由表達式 374
20.4.5 路由地址 375
20.4.6 路由分組 375
20.4.7 MISS路由 376
20.5 控制器 377
20.5.1 控制器的定義 377
20.5.2 跳轉和重定向 378
20.6 資料庫 379
20.6.1 資料庫的連線 379
20.6.2 基本操作 382
20.7 模型 386
20.7.1 模型的定義 387
20.7.2 模型基礎操作 388
20.8 視圖 395
20.8.1 視圖渲染 395
20.8.2 視圖賦值 396
20.9 模板 398
20.9.1 變數輸出 398
20.9.2 使用函式 399
20.9.3 內置標籤 400
20.10 小結 403
20.11 實踐與練習 403
第3篇 高級套用
第21章 Smarty模板技術 406
視頻講解:55分鐘
21.1 Smarty簡介 407
21.1.1 什麼是Smarty 407
21.1.2 Smarty與MVC 407
21.1.3 Smarty的特點 407
21.2 Smarty的安裝配置 408
21.2.1 Smarty的下載和安裝 408
21.2.2 第一個Smarty程式 408
21.2.3 Smarty配置 410
21.3 Smarty模板設計 412
21.3.1 Smarty模板檔案 412
21.3.2 注釋 412
21.3.3 變數 412
21.3.4 修飾變數 415
21.3.5 流程控制 417
21.4 Smarty程式設計 420
21.4.1 Smarty中的常用方法 420
21.4.2 Smarty的配置變數 422
21.5 Smarty模板的套用 422
21.5.1 將Smarty的配置方法封裝到類中 422
21.5.2 Smarty+ADODB整合套用 425
21.6 小結 427
21.7 實踐與練習 427
第22章 PHP與XML技術 428
視頻講解:24分鐘
22.1 XML概述 429
22.2 XML語法 429
22.2.1 XML文檔結構 429
22.2.2 XML聲明 430
22.2.3 處理指令 430
22.2.4 注釋 430
22.2.5 XML元素 431
22.2.6 XML屬性 431
22.2.7 使用CDATA標記 431
22.2.8 XML命名空間 432
22.3 在PHP中創建XML文檔 433
22.4 SimpleXML類庫 433
22.4.1 創建SimpleXML對象 434
22.4.2 遍歷所有子元素 435
22.4.3 遍歷所有屬性 436
22.4.4 訪問特定節點元素和屬性 437
22.4.5 修改XML數據 437
22.4.6 保存XML文檔 439
22.5 動態創建XML文檔 440
22.6 小結 441
22.7 實踐與練習 441
第23章 PHP與Ajax技術 442
視頻講解:42分鐘
23.1 Ajax概述 443
23.1.1 什麼是Ajax 443
23.1.2 Ajax的開發模式 443
23.1.3 Ajax的優點 444
23.2 Ajax使用的技術 444
23.2.1 JavaScript腳本語言 444
23.2.2 XMLHttpRequest 444
23.2.3 XML語言 447
23.2.4 DOM 447
23.2.5 CSS 447
23.3 Ajax開發需要注意的幾個問題 448
23.4 在PHP中套用Ajax技術的典型套用 449
23.4.1 在PHP中套用Ajax技術檢測用戶名 449
23.4.2 在PHP中套用Ajax技術實現部落格文章類別添加 451
23.5 小結 454
23.6 實踐與練習 454
第4篇 項目實戰
第24章 套用Smarty模板開發電子商務網站 456
視頻講解:2小時21分鐘
24.1 開發背景 457
24.2 需求分析 457
24.3 系統分析 457
24.3.1 系統目標 457
24.3.2 系統功能結構 458
24.3.3 開發環境 459
24.3.4 資料夾組織結構 459
24.4 資料庫與數據表的設計 460
24.4.1 資料庫分析 460
24.4.2 創建資料庫和數據表 462
24.5 公共檔案設計 464
24.5.1 資料庫連線、管理和分頁類檔案 465
24.5.2 Smarty模板配置類檔案 467
24.5.3 執行類的實例化檔案 468
24.6 前台首頁設計 468
24.6.1 前台首頁技術分析 469
24.6.2 前台首頁實現過程 470
24.7 登錄模組設計 472
24.7.1 登錄模組概述 472
24.7.2 登錄模組技術分析 472
24.7.3 用戶註冊 474
24.7.4 用戶登錄 476
24.7.5 找回密碼 478
24.8 會員信息模組設計 483
24.8.1 會員信息模組概述 483
24.8.2 會員信息模組技術分析 483
24.8.3 會員中心 484
24.8.4 安全退出 487
24.9 商品顯示模組 488
24.9.1 商品展示模組概述 488
24.9.2 商品展示模組技術分析 489
24.9.3 商品展示模組的實現過程 489
24.10 購物車模組設計 492
24.10.1 購物車模組概述 492
24.10.2 購物車模組技術分析 493
24.10.3 購物車展示 495
24.10.4 更改商品數量 497
24.10.5 刪除商品 498
24.10.6 保存購物車 500
24.11 收銀台模組設計 502
24.11.1 收銀台模組概述 502
24.11.2 收銀台模組技術分析 502
24.11.3 顯示訂單 503
24.11.4 填寫訂單 503
24.11.5 處理訂單 504
24.12 後台首頁設計 505
24.12.1 後台首頁概述 505
24.12.2 後台首頁技術分析 506
24.12.3 後台首頁實現過程 508
24.13 開發常見問題與解決 510
24.13.1 解決Ajax的亂碼問題 510
24.13.2 使用JS腳本獲取、輸出標籤內容 510
24.13.3 禁用頁面快取 510
24.13.4 在新視窗中使用session 511
24.13.5 判斷上傳檔案格式 511
24.13.6 設定伺服器的時間 511
24.14 小結 512
第25章 套用ThinkPHP框架開發編程e學網 513
視頻講解:1小時29分鐘
25.1 項目設計思路 514
25.1.1 功能闡述 514
25.1.2 功能結構 514
25.1.3 系統預覽 515
25.2.1 資料庫分析 517
25.2.2 數據表設計 517
25.2.3 連線資料庫 520
25.3 系統開發必備 520
25.3.1 系統開發環境 520
25.3.2 資料夾組織結構 521
25.4 前台模組設計 521
25.4.1 視頻首頁設計 521
25.4.2 登錄註冊頁面設計 524
25.4.3 視頻列表頁面設計 529
25.4.4 視頻播放頁面設計 530
25.4.5 會員中心頁面設計 533
25.5 後台模組設計 535
25.5.1 課程管理 535
25.5.2 資源管理 537
25.5.3 註冊會員 539
25.5.4 賬號管理 540
25.6 小結 540

相關詞條

熱門詞條

聯絡我們