本書基于PHP 7.4,介紹PHP編程技術,涵蓋了PHP所有基本的要點,包括語言基礎、常見的Web應用程序技術、數據庫交互技術,以及安全腳本、錯誤處理、性能調優和跨平臺開發等高級主題。
Kevin Tatroe做了近30年的Web開發工程師和蘋果工程師,開發各種網站以及移動端、 桌面端和TV應用。 他對允許進行快速迭代、 實驗和高度開放的架構技術很感興趣。Peter MacIntyre 擁有 30 多年的信息技術行業經驗,主要集中在 PHP 和 Web技術領域。他是 PHP : The Good Parts( O’Reilly)一書的作者, Pro PHP Programming (APress)、 Using Visual Objects,Using PowerBuilder 5、ASP.NET Bible 以及 Zend Studio for Eclipse Developer’s Guide 的合著者。
盧濤 專業社區ITPUB Oracle開發版版主。1995年參加工作,□001年轉到IT部門從事C/C++軟件開發,□004年開始做系統分析和Oracle數據庫方面工作。參加過多個全國性普查數據處理項目和統計報表聯網填報系統的開發、支持和優化,目前主要從事大數據分析方面的工作。曾參與編寫《劍破冰山―Oracle開發的藝術》一書,并翻譯了數本Oracle管理、開發和性能優化;C/C++開發、開發、Web開發、Linux系統管理、大數據等方面的書籍。
第一 章 PHP 介紹 1
PHP 可以做什么 1
PHP 的歷史簡述 □
PHP 的演變 □
PHP 的廣泛使用 6
安裝PHP 7
PHP 的開發流程 7
配置頁面 8
表單 9
數據庫 10
圖片 1□
下一步 14
第□ 章 語言基礎 15
詞法結構 15
大小寫區分性 15
語句和分號 15
空白符和換行 16
注釋 17
字面量 □0
標識符 □0
關鍵字 □1
數據類型 □□
整型 □□
浮點數 □3
字符串 □4
布爾型 □6
數組 □6
對象 □8
資源 □8
回調 □9
NULL 30
變量 30
變量的變量 31
變量的引用 31
變量的作用域 3□
垃圾收集 34
表達式和操作符 35
操作符的數目 37
操作符的優先級 37
操作符的結合性 38
隱式轉換 38
算術操作符 39
字符串連接操作符 40
自動遞增/自動遞減操作符 40
比較操作符 41
位操作符 4□
邏輯操作符 44
類型轉換操作符 45
賦值操作符 46
其他操作符 47
流程控制語句 48
if 48
switch 51
while 53
for 55
foreach 57
try catch 57
declare 58
exit 和return 59
goto 59
包含代碼 60
將PHP 嵌入Web 頁面 6□
標準(XML)風格 6□
SGML 風格 64
直接輸出內容 64
下一步 64
第3 章 函數 65
調用函數 65
定義函數 66
變量作用域 68
全局變量 69
靜態變量 70
函數參數 71
按值傳遞參數 71
按引用傳遞參數 71
默認參數 7□
可變參數 7□
遺漏參數 73
類型提示 74
返回值 75
可變函數 76
匿名函數 77
下一步 79
第4 章 字符串 80
引用字符串常量 80
變量插值 80
單引號括起來的字符串 81
雙引號括起來的字符串 81
here 文檔 8□
輸出字符串 84
echo 84
print() 85
printf() 85
print_r() 和var_dump() 87
訪問單個字符 89
整理字符串 89
刪除空白符號 89
改變大小寫 90
編碼和轉義 91
HTML 91
URL 94
SQL 95
C 語言字符串編碼 96
比較字符串 96
精確比較 97
近似相等 98
處理和查找字符串 100
子串 100
其他字符串函數 101
分解字符串 10□
字符串查找函數 104
正則表達式 107
基礎 107
字符類 108
選擇性 109
重復序列 110
子模式 110
分隔符 111
匹配行為 111
字符類 11□
錨 113
量詞和貪婪 113
非捕獲組 114
逆向引用 114
后綴選項 115
內聯選項 116
前向斷言和后向斷言 117
剪切 118
條件表達式 119
正則表達式的相關函數 119
和Perl 正則表達式的差別 1□4
下一步 1□5
第5 章 數組 1□6
索引數組和關聯數組 1□6
識別數組元素 1□7
在數組中存儲數據 1□8
在數組末尾添加值 1□9
指定值的范圍 130
獲得數組大小 130
填充數組 130
多維數組 131
析取多個值 131
切割數組 13□
數組分塊 13□
鍵(Key)和值(Value) 133
檢查元素是否存在 134
在數組中刪除和插入元素 135
數組和變量間的轉換 136
從數組創建變量 136
從變量創建數組 137
遍歷數組 137
foreach 結構 137
迭代器函數 138
使用for 循環 140
為數組中的每個元素調用函數 140
數組歸納 141
查找元素值 14□
排序 144
一次排序一個數組 144
按自然順序排序 147
一次對多個數組進行排序 147
翻轉數組 148
隨機排序 149
作用于整個數組 149
計算數組元素的和 149
合并兩個數組 150
計算兩個數組的差 150
從數組中過濾元素 151
使用數組實現數據類型 151
集合 15□
棧 15□
實現迭代器接口 154
下一步 156
第6 章 對象 157
對象概述 157
術語 158
創建一個對象 158
訪問對象的屬性和方法 159
聲明一個類 161
聲明方法 161
聲明屬性 164
聲明類常量 165
繼承 166
接口 167
trait 168
抽象方法 171
構造函數 17□
析構函數 173
匿名類 173
自省 174
類檢驗 174
對象檢驗 176
自省程序示例 177
序列化 180
下一步 183
第7 章 日期和時間 184
下一步 188
第8 章 Web 技術 189
HTTP 基礎 189
變量 190
服務器信息 191
處理表單 193
方法 193
參數 194
自處理頁面 195
黏性表單 197
多值參數 198
黏性多值參數 □00
文件上傳 □0□
表單驗證 □03
設置響應標頭 □05
不同的內容類型 □06
重定向 □06
過期 □06
認證 □07
維護狀態 □08
cookie □09
會話 □13
結合cookie 和會話 □16
SSL □17
下一步 □17
第9 章 數據庫 □18
使用PHP 訪問數據庫 □18
關系數據庫和SQL □19
PHP 數據對象 □□0
MySQLi 對象接口 □□4
檢索數據用于顯示 □□5
SQLite □□6
文件級別的操作 □30
MongoDB □38
檢索數據 □40
插入更復雜的數據 □41
下一步 □44
□□0 章 圖片 □45
在網頁中嵌入圖片 □45
圖片基本概念 □47
創建和繪制圖片 □47
圖片程序的結構 □48
變更輸出格式 □49
圖片格式支持測試 □50
讀取已有的文件 □50
基本繪圖函數 □50
帶文本的圖片 □5□
字體 □53
TrueType 字體 □54
動態生成按鈕 □56
緩存動態生成的按鈕 □57
更快的緩存 □58
圖片縮放 □60
顏色處理 □6□
使用 alpha 通道 □63
顏色識別 □65
真彩色索引 □65
圖片的文本形式 □66
下一步 □67
□□1 章 PDF 0□68
PDF 擴展 □68
文件和頁面 □68
簡單的示例 □69
初始化文件 □70
輸出文本單元格 □70
文本 □70
坐標 □70
文本屬性 □73
頁眉、頁腳和類擴展 □75
圖片和鏈接 □77
表格和數據 □79
下一步 □8□
□□□ 章 XML 0□83
XML 快速入門 □83
生成XML 文件 □85
解析XML 文件 □87
元素處理程序 □87
字符數據處理程序 □88
處理指令 □89
實體處理程序 □90
默認處理程序 □91
選項 □9□
使用解析器 □93
錯誤 □94
方法作為處理程序 □95
示例解析程序 □96
用DOM 解析XML 文件 301
用SimpleXML 解析XML 文件 301
用XSLT 轉換XML 文件 30□
下一步 305
□□3 章 JSON 0306
使用JSON 306
序列化PHP 對象 307
選項 309
下一步 310
□□4 章 安全 311
預防 311
過濾輸入 311
轉義輸出 314
安全漏洞 319
跨站腳本 319
SQL 注入 319
文件名漏洞 3□1
會話固定 3□□
文件上傳陷阱 3□3
未授權的文件訪問 3□4
PHP 的代碼問題 3□7
shell 命令弱點 3□8
數據加密問題 3□9
更多信息 3□9
安全概要回顧 3□9
下一步 330
□□5 章 應用技術 331
代碼庫 331
模板系統 33□
處理輸出 335
輸出緩沖 335
壓縮輸出 337
性能調優 337
基準測試 338
剖析 340
優化執行時間 341
優化內存占用 34□
反向代理和□□ 34□
下一步 344
□□6 章 網頁服務 0345
REST 客戶端 345
響應 347
獲取資源 348
更新資源 349
創建資源 349
刪除資源 350
XML-RPC 351
服務器 351
客戶端 353
下一步 354
□□7 章 調試PHP 0355
開發環境 355
預演環境 356
生產環境 356
phpini 的配置 357
錯誤處理 358
錯誤報告 358
異常 360
錯誤抑制 360
觸發錯誤 360
定義錯誤處理程序 361
手動調試 364
錯誤日志 366
IDE 調試 366
更多的調試技術 368
下一步 368
□□8 章 不同平臺的PHP 0369
為Windows 和UNIX 編寫可移植的代碼 369
確定平臺 369
跨平臺處理路徑 370
探索服務器環境 370
發送郵件 371
行尾處理 37□
文件尾部處理 37□
使用外部命令 373
訪問特定平臺擴展 373
COM 接口 373
背景 373
PHP 函數 375
API 規范 375
附錄A 函數參考 377
作者介紹 474
封面介紹 475