《21天學通PHP》是電子工業出版社2009年1月1日出版的圖書,作者是白志強、 白志剛。
基本介紹
- 書名:21天學通PHP
- 作者:白志強、 白志剛
- ISBN:9787121079009
- 頁數:412
- 定價:49.80元
- 出版社:電子工業出版社
- 出版時間:2009-1-1
- 開本:16
內容簡介,寫作原因,目錄,
內容簡介
第一篇
主要講解了PHP基礎知識,主要內容包括初識PHP、配置Web伺服器和HTML基礎。
第二篇
主要內容是PHP基礎語法,包括PHP基礎知識、常用流程控制、常用函式、數組、字元串、HTML表單和檔案的基本操作。
第三篇
主要分析了PHP的常見技術,主要講解了類和對象、會話管理、正則表達式和式樣匹配和錯誤調試與異常處理。
第四篇
詳細介紹了資料庫的內容,主要包括資料庫基礎、SQL語言和MySQL資料庫基礎、MySQL數據類型、MySQL資料庫及其圖形化管理工具、資料庫的最佳化和PHP運算元據庫。
第五篇
為綜合案例篇,通過一個具體的實例講解了如何使用PHP進行實際開發。
寫作原因
作為一個初學PHP編程的人,最重要的第一步是什麼呢?毫無疑問,是選擇一本好書。然而令人感到尷尬的是,書店中PHP的書可謂琳琅滿目,卻很難找到一本適合初學者使用的書。很多書中都充斥著很多複雜難記的語法和概念,讓剛開始學習PHP的人一頭霧水,就像有一堵無形的牆立在自己面前而無法逾越。 為了讓PHP初學者少走彎路,快速而輕鬆地學會PHP編程,筆者總結自己學習PHP的經驗,並結合多年的開發經驗,編寫這本能夠真正讓PHP初學者容易掌握的書。在這本書中,筆者將通過21天的學習規劃,讓讀者快速掌握PHP編程的基本知識。
目錄
目錄1 PHP基礎知識
第1章 初識PHP
1.1 介紹PHP 23 1.1.1 PHP是什麼 23 1.1.2 PHP的前景 23 1.1.3 PHP的優勢 24 1.1.4 PHP的發展歷史 24 1.2 PHP與ASP、JSP的對比 25 1.2.1 語言介紹 25 1.2.2 性能對比 25 1.3 PHP常用開發工具 26 1.3.1 PHP代碼開發工具 26 1.3.2 網頁設計工具 27 1.3.3 文本編輯工具 29 1.4 綜合練習 31 1.5 小結 32 1.6 習題 32
第2章 配置Web伺服器
2.1 準備工作 34 2.1.1 選擇硬體 34 2.1.2 選擇作業系統 34 2.1.3 選擇伺服器軟體 35 2.1.4 選擇PHP 35 2.1.5 選擇資料庫 35 2.2 Apache的安裝 36 2.2.1 安裝Apache 36 2.2.2 配置Apache 38 2.3 PHP的安裝與配置 39 2.3.1 安裝PHP 39 2.3.2 配置PHP 40 2.4 MySQL資料庫的安裝與測試 40 2.4.1 安裝MySQL 40 2.4.2 測試MySQL 43 2.5 建立關聯 43 2.5.1 設定Apache支持PHP網頁 43 2.5.2 測試Apache與PHP的關聯 43 2.5.3 測試調用MySQL 45 2.6 綜合練習 45 2.7 小結 46 2.8 習題 46
第3章 HTML基礎
3.1 HTML簡介 48 3.1.1 了解HTML語言 48 3.1.2 HTML語言實例 49 3.2 HTML語法 50 3.2.1 HTML標籤 50 3.2.2 HTML屬性 51 3.2.3 HTML注釋 52 3.3 HTML文檔基本結構 53 3.3.1 HTML主體標記 53 3.3.2 HTML頭部標記 53 3.3.3 HTML主體區標記 54 3.4 字型標籤 55 3.4.1 標題字標記 55 3.4.2 標題字的對齊屬性 56 3.4.3 文字的修飾標記 57 3.4.4 字型標記 59 3.5 段落標記 60 3.5.1 段落標記 60 3.5.2 行中斷標籤 61 3.5.3 不換行標籤 62 3.6 綜合練習 62 3.7 小結 64 3.8 習題 65
第4章 PHP基礎知識
4.1 PHP的基本語法 66 4.1.1 語言風格 66 4.1.2 PHP在HTML中的嵌入 67 4.1.3 標識符 68 4.1.4 注釋 69 4.1.5 echo輸出命令 70 4.1.6 print輸出命令 70 4.2 數據類型 71 4.2.1 布爾型 71 4.2.2 整型 72 4.2.3 浮點型 72 4.2.4 數據類型的轉換 73 4.2.5 字元串 74 4.2.6 NULL類型 75 4.3 變數 75 4.3.1 變數名 75 4.3.2 定義和賦值 76 4.3.3 輸出變數 76 4.3.4 變數類型自動轉換 77 4.3.5 默認變數 78 4.4 常量 79 4.4.1 默認常量 79 4.4.2 自定義常量 80 4.5 運算符及表達式 80 4.5.1 算術運算符 81 4.5.2 賦值運算符 82 4.5.3 自增自減運算符 82 4.5.4 位運算符 84 4.5.5 邏輯運算符 85 4.5.6 關係運算符 85 4.5.7 其他運算符 86 4.5.8 運算符優先權 87 4.5.9 表達式 88 4.6 綜合練習 88 4.7 小結 90 4.8 習題 90
第5章 常用流程控制
5.1 if語句的使用 92 5.1.1 只含if的語句 92 5.1.2 if...else結構語句 93 5.1.3 嵌套的if...else結構 94 5.1.4 if語句多種嵌套 95 5.2 switch語句的使用 96 5.2.1 switch語句 97 5.2.2 switch語句的其他形式 98 5.3 while語句的使用 98 5.3.1 while循環 99 5.3.2 do…while循環 100 5.3.3 while和do…while循環的區別 100 5.4 for語句的使用 101 5.4.1 一般形式 101 5.4.2 多重循環 103 5.5 break/continue語句的使用 104 5.5.1 break語句的用法 104 5.5.2 continue語句的用法 105 5.5.3 continue和break語句的區別 105 5.6 綜合練習 106 5.7 小結 108 5.8 習題 108
第6章 常用函式
6.1 自定義函式 111 6.1.1 自定義函式格式 111 6.1.2 調用用戶定義的函式 112 6.1.3 按值傳遞參數 112 6.1.4 引用傳遞參數 114 6.1.5 定義默認參數 115 6.1.6 函式返回值 116 6.1.7 返回多個值 117 6.2 函式的高級調用 118 6.2.1 嵌套調用 118 6.2.2 遞歸調用 118 6.3 函式變數 119 6.3.1 變數函式 119 6.3.2 局部變數 120 6.3.3 全局變數 120 6.3.4 動態變數 122 6.3.5 靜態變數 123 6.4 檔案包含 123 6.4.1 require包含檔案 123 6.4.2 include包含檔案 124 6.4.3 require和include的區別 125 6.4.4 單次調用檔案 126 6.5 數學函式 127 6.5.1 進位函式 127 6.5.2 進制轉化 128 6.6 時間函式 129 6.6.1 日期函式date() 129 6.6.2 獲得日期信息 130 6.6.3 其他時間函式 131 6.7 綜合練習 132 6.8 本章小結 134 6.9 習題 134
第7章 數組
7.1 定義數組 136 7.1.1 數組的構成 136 7.1.2 使用賦值創建數組 136 7.1.3 使用array()函式創建數組 138 7.1.4 鍵名分配 138 7.1.5 用字元串作鍵名 139 7.1.6 鍵名的新建/修改 140 7.1.7 創建多維數組 141 7.2 數組輸出與測試 141 7.2.1 列印變數 141 7.2.2 輸出數組 142 7.2.3 測試數組 143 7.3 遍歷數組 143 7.3.1 foreach遍歷數組 144 7.3.2 foreach含鍵名的遍歷 144 7.3.3 each()函式遍歷數組 145 7.3.4 list()函式遍歷數組 146 7.3.5 for語句遍歷 147 7.3.6 返回鍵和鍵值 148 7.3.7 查找數組元素值 149 7.4 數組計算 149 7.4.1 計算元素個數 149 7.4.2 count()函式的遞歸 150 7.4.3 數組運算符 151 7.4.4 相同元素數組的比較 152 7.5 數組排序 153 7.5.1 按標識符排序 153 7.5.2 按元素值排序 154 7.5.3 刪除原有鍵名排序 155 7.6 綜合練習 155 7.7 小結 157 7.8 習題 157
目錄2 PHP基礎語法
第8章 字元串
8.1 去除特殊字元 159 8.1.1 去除兩端空格 159 8.1.2 去除左端空格 160 8.1.3 去除右端空格 161 8.2 字元串的大小寫轉換 161 8.2.1 轉換為小寫 161 8.2.2 轉換為大寫 162 8.2.3 首字元大寫轉換 163 8.2.4 單詞首字元大寫轉換 163 8.3 比較字元串 164 8.3.1 比較運算符 164 8.3.2 區分大小寫字元串的比較 165 8.3.3 不區分大小寫字元串的比較 165 8.3.4 選擇性的比較字元串 166 8.3.5 不區分大小寫選擇性的比較 167 8.4 查找與匹配 167 8.4.1 查找字元串 168 8.4.2 查找字元串出現次數 169 8.4.3 查找最後一次的位置 170 8.4.4 查找第一次的位置 170 8.5 替換與分隔 171 8.5.1 字元串的替換 171 8.5.2 部分替換 172 8.5.3 分隔字元串 173 8.6 字元串的其他操作 174 8.6.1 MD5算法 174 8.6.2 創建格式化輸出 175 8.7 綜合練習 176 8.8 小結 178 8.9 習題 178
第9章 HTML表單
9.1 表單製作 180 9.2 輸入標記<input> 181 9.2.1 文本域text 182 9.2.2 密碼域password 183 9.2.3 檔案域file 184 9.2.4 提交與重置按鈕 185 9.2.5 複選框 186 9.2.6 單選按鈕 187 9.2.7 <select>下拉列表標記 188 9.3 提交表單信息 190 9.3.1 get方法提交 190 9.3.2 post方法提交 192 9.4 PHP處理表單 193 9.5 表單驗證 195 9.5.1 用戶名驗證 195 9.5.2 郵件地址驗證 196 9.5.3 密碼驗證 197 9.6 綜合練習 197 9.7 小結 201 9.8 習題 201
第10章 檔案的基本操作
10.1 檔案訪問 203 10.1.1 判斷檔案是否存在 203 10.1.2 訪問檔案屬性 204 10.1.3 打開檔案 205 10.1.4 關閉檔案 206 10.2 讀取檔案 206 10.2.1 讀取檔案相應字元 206 10.2.2 讀取整個檔案 207 10.2.3 按行讀取 208 10.3 寫入數據 208 10.3.1 寫入單行數據 209 10.3.2 寫入多行數據 210 10.4 指針 211 10.4.1 查找指針位置 211 10.4.2 rewind()函式 212 10.4.3 指針定位 213 10.5 目錄操作 214 10.5.1 打開目錄 214 10.5.2 關閉目錄 215 10.5.3 讀取目錄 215 10.5.4 遍歷目錄 216 10.5.5 創建目錄 217 10.5.6 刪除目錄 218 10.6 綜合練習 219 10.7 小結 220 10.8 習題 221
目錄3 PHP常見技術
第11章 類和對象
11.1 類的使用 223 11.1.1 類和對象 223 11.1.2 創建類 224 11.1.3 實例化類 224 11.1.4 方法的使用 224 11.2 類的訪問控制 225 11.2.1 公有屬性 226 11.2.2 改變屬性值 226 11.2.3 私有屬性 227 11.2.4 protected屬性 228 11.2.5 const屬性 229 11.3 類的特性 230 11.3.1 繼承性 230 11.3.2 多態性 231 11.4 構造函式 232 11.4.1 創建構造函式 232 11.4.2 調用父類構造函式 234 11.5 析構函式 235 11.5.1 析構函式的調用 235 11.5.2 使用其他方法調用析構函式 236 11.6 $this關鍵字 236 11.6.1 調用變數 237 11.6.2 調用其他方法 237 11.7 static關鍵字 238 11.7.1 靜態屬性 238 11.7.2 靜態方法 239 11.8 final關鍵字 240 11.8.1 final函式的調用 240 11.8.2 final類不能被繼承 241 11.8.3 final方法不能被重寫 242 11.9 綜合練習 243 11.10 小結 245 11.11 習題 245
第12章 會話管理
12.1 Cookie概述 247 12.1.1 Cookie的作用 247 12.1.2 Cookie的限制 248 12.2 PHP中Cookie的使用 248 12.2.1 創建Cookie 248 12.2.2 訪問Cookie 249 12.2.3 Cookie工作時間 249 12.2.4 Cookie數組 251 12.3 Session常見函式及用法 251 12.3.1 啟動一個Session 251 12.3.2 調用Session變數 252 12.3.3 查看session_id的值 253 12.3.4 Session的使用 254 12.4 綜合練習 255 12.5 小結 257 12.6 習題 258
第13章 正則表達式和式樣匹配
13.1 正則表達式的匹配 259 13.1.1 一般匹配 259 13.1.2 特殊匹配 260 13.2 元字元 260 13.2.1 行首位置 261 13.2.2 行尾位置 261 13.2.3 元字元+ 262 13.2.4 字元類 263 13.3 樣式匹配函式 264 13.3.1 表達式匹配 264 13.3.2 全局匹配 265 13.3.3 搜尋和替換 267 13.3.4 分隔字元串 268 13.4 綜合練習 269 13.5 小結 270 13.6 習題 271
第14章 錯誤調試與異常處理
14.1 基本調試策略 273 14.1.1 調試步驟 273 14.1.2 配置指令 273 14.2 語法錯誤 275 14.2.1 缺少分號 275 14.2.2 缺少一個引號 275 14.2.3 缺少整個引號 276 14.2.4 缺少關鍵字 277 14.2.5 缺少括弧 278 14.2.6 變數前缺少符號 278 14.3 運行錯誤 279 14.3.1 檔案操作與許可權 279 14.3.2 連線資料庫失敗 280 14.4 邏輯錯誤 280 14.4.1 計算錯誤 281 14.4.2 不測試返回值 281 14.5 print語句調試 282 14.6 綜合練習 284 14.7 小結 285 14.8 習題 285
目錄4 資料庫知識
第15章 資料庫基礎
15.1 數據模型 287 15.1.1 層次模型 287 15.1.2 網狀模型 287 15.1.3 關係模型 288 15.2 關係資料庫 288 15.2.1 關係資料庫基本概念 288 15.2.2 關係的基本特點 289 15.2.3 數據的表示方法 289 15.3 鍵的選用 290 15.3.1 主鍵 290 15.3.2 組合鍵 290 15.3.3 候選鍵 291 15.3.4 外鍵 291 15.4 關聯類型 292 15.4.1 一對一關係 292 15.4.2 一對多關係 292 15.4.3 多對多關係 293 15.5 正規化 293 15.5.1 第一範式 293 15.5.2 第二範式 294 15.5.3 第三範式 295 15.6 完整性 295 15.6.1 實體完整性 295 15.6.2 參照完整性 296 15.6.3 域完整性 296 15.7 約束 297 15.7.1 主鍵約束 297 15.7.2 唯一約束 297 15.7.3 外鍵約束 297 15.7.4 默認約束 298 15.8 綜合練習 298 15.9 小結 298 15.10 習題 299
第16章 SQL語言和MySQL資料庫基礎
16.1 SQL語言簡介 300 16.1.1 標準化語言 300 16.1.2 大小寫規則 300 16.2 MySQL資料庫連線 301 16.2.1 通過客戶端登錄 301 16.2.2 通過Windows命令登錄 301 16.2.3 查看MySQL資料庫版本 302 16.3 賬號和管理許可權 302 16.3.1 一般用戶許可權 302 16.3.2 管理員許可權 303 16.4 創建新用戶 303 16.4.1 grant命令 304 16.4.2 查看用戶許可權 305 16.4.3 revoke命令 305 16.5 MySQL基本的SQL命令 306 16.5.1 創建資料庫 306 16.5.2 use命令 306 16.5.3 創建資料庫表 307 16.5.4 查看資料庫 308 16.5.5 查看資料庫表 309 16.5.6 describe命令 309 16.5.7 備份資料庫 310 16.5.8 刪除資料庫 311 16.6 創建和套用視圖 311 16.6.1 創建視圖 311 16.6.2 查看視圖 312 16.6.3 刪除視圖 312 16.7 綜合練習 313 16.8 小結 314 16.9 習題 314
第17章 MySQL數據類型
17.1 數值類型 316 17.1.1 整型 316 17.1.2 浮點型 317 17.1.3 定點數 319 17.2 數據欄位修飾符 320 17.2.1 自動增量設定 320 17.2.2 自動補齊前導0 321 17.3 字元串類型 321 17.3.1 CHAR和VARCHAR數據類型 321 17.3.2 BLOB和TEXT類型 322 17.3.3 ENUM類型 323 17.3.4 SET類型 323 17.4 日期和時間值 324 17.4.1 日期時間類型 324 17.4.2 TIMESTAMP數據類型 325 17.4.3 獲得當前日期 326 17.4.4 獲得當前時間 326 17.4.5 獲得當前日期和時間 327 17.5 綜合練習 327 17.6 小結 329 17.7 習題 329
第18章 MySQL資料庫及其圖形化管理工具
18.1 數據查詢 331 18.1.1 SELECT查詢語句 331 18.1.2 WHERE子句 332 18.1.3 And & Or條件查詢 333 18.1.4 模糊查詢 334 18.1.5 聯合多列 334 18.1.6 LIMIT 限定行數 335 18.1.7 找出某列最大值 336 18.1.8 計算行數 336 18.1.9 進行表達式計算 336 18.1.10 分組查詢 337 18.2 數據的其他操作 338 18.2.1 排序 338 18.2.2 插入數據 339 18.2.3 更新數據 339 18.2.4 刪除數據 340 18.2.5 批量錄入數據 340 18.3 使用phpMyAdmin管理資料庫 341 18.3.1 phpMyAdmin的安裝與配置 341 18.3.2 創建資料庫 341 18.3.3 創建資料庫表 341 18.3.4 插入數據 343 18.3.5 導出數據表 343 18.4 綜合練習 344 18.5 小結 348 18.6 習題 348
第19章 資料庫的最佳化
19.1 使用索引 350 19.1.1 創建索引 350 19.1.2 索引表查詢的影響 351 19.1.3 查看索引的使用 353 19.1.4 分析索引的使用 354 19.1.5 刪除索引 354 19.2 類型的選擇 355 19.2.1 選取最適用的欄位屬性 355 19.2.2 表的類型 355 19.3 鎖定表 356 19.3.1 READ鎖定 356 19.3.2 WRITE鎖定 357 19.3.3 查詢表級鎖 358 19.4 其他方法最佳化 359 19.4.1 創建臨時表 359 19.4.2 使用外鍵 359 19.5 定期最佳化檢查表 360 19.5.1 分析表 360 19.5.2 檢查表 360 19.5.3 最佳化表 361 19.6 綜合練習 361 19.7 小結 361 19.8 習題 362
第20章 PHP運算元據庫
20.1 連線和關閉資料庫 363 20.1.1 連線資料庫 363 20.1.2 永久連線 364 20.1.3 關閉資料庫 365 20.2 操作MySQL資料庫 366 20.2.1 創建資料庫 366 20.2.2 選擇資料庫 367 20.2.3 檢查錯誤 368 20.2.4 刪除資料庫 369 20.2.5 查詢資料庫檔案信息 370 20.2.6 查詢數據表檔案信息 371 20.2.7 查詢資料庫個數 372 20.2.8 查詢資料庫中數據表個數 373 20.2.9 查詢資料庫的名稱 374 20.2.10 查詢數據表的名稱 375 20.3 PHP對數據表的操作 376 20.3.1 建立數據表 376 20.3.2 刪除數據表 377 20.3.3 查詢表中欄位個數 378 20.3.4 查詢表中欄位名稱 379 20.4 PHP對數據表記錄的操作 381 20.4.1 插入數據 381 20.4.2 修改記錄 382 20.4.3 刪除記錄 383 20.4.4 提取記錄 384 20.4.5 指定記錄提取 386 20.4.6 提取記錄個數 387 20.5 綜合練習 388 20.6 小結 391 20.7 習題 391
目錄5 綜合案例
第21章 PHP開發實例
21.1 計數器模組 393 21.1.1 成品展示 393 21.1.2 運行原理 393 21.1.3 模組結構圖 394 21.1.4 實現程式 394 21.2 留言板模組 396 21.2.1 成品展示 396 21.2.2 運行原理 397 21.2.3 模組結構圖 398 21.2.4 創建資料庫 398 21.2.5 實現程式 399 21.3 小結 408