讀者反饋
譯者序
前言
作者簡介
第一篇 使用PHP
第1章 PHP快速入門教程
1.1 開始之前:瞭解PHP
1.2 創建一個示例應用:Bob汽車零部件商店
1.2.1 創建訂單錶單
1.2.2 錶單處理
1.3 在HTML中嵌入PHP
1.3.1 使用PHP標記
1.3.2 PHP語句
1.3.3 空格
1.3.4 注釋
1.4 添加動態內容
1.4.1 調用函數
1.4.2 使用date()函數
1.5 訪問錶單變量
1.5.1 簡短、中等以及長風格的錶單變量
1.5.2 字符串的連接
1.5.3 變量和文本
1.6 理解標識符
1.7 檢查變量類型
1.7.1 PHP的數據類型
1.7.2 類型強度
1.7.3 類型轉換
1.7.4 可變變量
1.8 聲明和使用常量
1.9 理解變量的作用域
1.10 使用操作符
1.10.1 算術操作符
1.10.2 字符串操作符
1.10.3 賦值操作符
1.10.4 比較操作符
1.10.5 邏輯操作符
1.10.6 位操作符
1.10.7 其他操作符
1.11 計算錶單總金額
1.12 理解操作符的優先級和結閤性:
1.13 使用可變函數
1.13.1 測試和設置變量類型
1.13.2 測試變量狀態
1.13.3 變量的重解釋
1.14 根據條件進行決策
1.14.1 if語句
1.14.2 代碼塊
1.14.3 else語句
1.14.4 elseif語句
1.14.5 switch語句
1.14.6 比較不同的條件
1.15 通過迭代實現重復動作
1.15.1 while循環
1.15.2 for和foreach循環
1.15.3 do...while循環
1.16 從控製結構或腳本中跳齣
1.17 使用可替換的控製結構語法
1.18 使用declare
1.19 下一章
第2章 數據的存儲與檢索
2.1 保存數據以便後期使用
2.2 存儲和檢索Bob的訂單
2.3 文件處理
2.4 打開文件
2.4.1 選擇文件模式
2.4.2 使用fopen()打開文件
2.4.3 通過FTP或HTTP打開文件
2.4.4 解決打開文件時可能遇到的問題
2.5 寫文件
2.5.1 fwrite()的參數
2.5.2 文件格式
2.6 關閉文件
2.7 讀文件
2.7.1 以隻讀模式打開文件:fopen()
2.7.2 知道何時讀完文件:feof()
2.7.3 每次讀取一行數據:fgets()、fgetss()和fgetcsv()
2.7.4 讀取整個文件:readfile()、fpassthru()和file()
2.7.5 讀取一個字符:fgetc()
2.7.6 讀取任意長度:fread()
2.8 使用其他有用的文件函數
2.8.1 查看文件是否存在:file_exists()
2.8.2 確定文件大小:filesize()
2.8.3 刪除一個文件:unlink()
2.8.4 在文件中定位:rewind()、fseek()和ftell()
2.9 文件鎖定
2.10 更好的方式:數據庫管理係統
2.10.1 使用普通文件的幾個問題
2.10.2 RDBMS是如何解決這些問題的
2.11 進一步學習
2.12 下一章
第3章 使用數組
3.1 什麼是數組
3.2 數字索引數組
3.2.1 數字索引數組的初始化
3.2.2 訪問數組的內容
3.2.3 使用循環訪問數組
3.3 使用不同索引的數組
3.3.1 初始化相關數組
3.3.2 訪問數組元素
3.3.3 使用循環語句
3.4 數組操作符
3.5 多維數組
3.6 數組排序
3.6.1 使用sort()函數
3.6.2 使用asort()函數和ksort()函數對相關數組排序
3.6.3 反嚮排序
3.7 多維數組的排序
3.7.1 用戶定義排序
3.7.2 反嚮用戶排序
3.8 對數組進行重新排序
3.8.1 使用shuffle()函數
3.8.2 使用array_reverse()函數
3.9 從文件載入數組
3.10 執行其他的數組操作
3.10.1 在數組中瀏覽:each()、current()、reset()、end()、next()、pos()和prev()
3.10.2 對數組的每一個元素應用任何函數:array_walk()
3.10.3 統計數組元素個數:count()、sizeof()和array_count_values()
3.10.4 將數組轉換成標量變量:extract()
3.11 進一步學習
3.12 下一章
第4章 字符串操作與正則錶達式
4.1 創建一個示例應用程序:智能錶單郵件
4.2 字符串的格式化
4.2.1 字符串的整理:chop()、ltrim()和trim()
4.2.2 格式化字符串以便顯示
4.2.3 格式化字符串以便存儲:addslashes()和stripslashes()
4.3 用字符串函數連接和分割字符串
4.3.1 使用函數explode()、implode()和join()
4.3.2 使用strtok()函數
4.3.3 使用substr()函數
4.4 字符串的比較
4.4.1 字符串的排序:strcmp()、strcasecmp()和strnatcmp()
4.4.2 使用strlen()函數測試字符串的長度
4.5 使用字符串函數匹配和替換子字符串
4.5.1 在字符串中查找字符串:strstr()、strchr()、strrchr()和stristr()
4.5.2 查找子字符串的位置:strpos()、strrpos()
4.5.3 替換子字符串:str_replace()、substr_replace()
4.6 正則錶達式的介紹
4.6.1 基礎知識
4.6.2 字符集和類
4.6.3 重復
4.6.4 子錶達式
4.6.5 子錶達式計數
4.6.6 定位到字符串的開始或末尾
4.6.7 分支
4.6.8 匹配特殊字符
4.6.9 特殊字符一覽
4.6.10 在智能錶單中應用
4.7 用正則錶達式查找子字符串
4.8 使用正則錶達式分割字符串
4.9 比較字符串函數和正則錶達式函數
4.10 進一步學習
4.11 下一章
第5章 代碼重用與函數編寫
5.1 代碼重用的好處
5.1.1 成本
5.1.2 可靠性
5.1.3 一緻性
5.2 使用require()和include()函數
5.2.1 文件擴展名和require()語句
5.2.2 使用require()製作Web站點的模版
5.2.3 使用auto_prepend_file和auto_append_file
5.3 在PHP中使用函數
5.3.1 調用函數
5.3.2 調用未定義的函數
5.3.3 理解字母大小寫和函數名稱
5.4 理解為什麼要定義自己的函數
5.5 瞭解基本的函數結構
5.5.1 函數命名
5.6 使用參數
5.7 理解作用域
5.8 參數的引用傳遞和值傳遞
5.9 使用Return關鍵字
5.9.1 從函數返迴一個值
5.10 實現遞歸
5.10.1 名稱空間
5.11 進一步學習
5.12 下一章
第6章 麵嚮對象的PHP
6.1 理解麵嚮對象的概念
6.1.1 類和對象
6.1.2 多態性
6.1.3 繼承
6.2 在PHP中創建類、屬性和操作
6.2.1 類的結構
6.2.2 構造函數
6.2.3 析構函數
6.3 類的實例化
6.4 使用類的屬性
6.5 使用private和public關鍵字控製訪問
6.6 類操作的調用
6.7 在PHP中實現繼承
6.7.1 通過繼承使用private和protected訪問修飾符控製可見性
6.7.2 重載
6.7.3 使用final關鍵字禁止繼承和重載
6.7.4 理解多重繼承
6.7.5 實現接口
6.8 類的設計
6.9 編寫類代碼
6.10 理解PHP麵嚮對象新的高級功能
6.10.1 使用Per-Class常量
6.10.2 實現靜態方法
6.10.3 檢查類的類型和類型提示
6.10.4 剋隆對象
6.10.5 使用抽象類
6.10.6 使用__call()重載方法
6.10.7 使用__autoload()方法
6.10.8 實現迭代器和迭代
6.10.9 將類轉換成字符串
6.10.10 使用Reflection(反射)API
6.11 下一章
第7章 錯誤和 異常處理
7.1 異常處理的概念
7.2 Exception類
7.3 用戶自定義異常
7.4 Bob的汽車零部件商店應用程序的異常
7.5 異常和PHP的其他錯誤處理機製
7.6 進一步學習
7.7 下一章
第二篇 使用MySQL
第8章 設計Web數據庫
8.1 關係數據庫的概念
8.1.1 錶格
8.1.2 列
8.1.3 行
8.1.4 值
8.1.5 鍵
8.1.6 模式
8.1.7 關係
8.2 如何設計Web數據庫
8.2.1 考慮要建模的實際對象
8.2.2 避免保存冗餘數據
8.2.3 使用原子列值
8.2.4 選擇有意義的鍵
8.2.5 考慮需要詢問數據庫的問題
8.2.6 避免多個空屬性的設計
8.2.7 錶格類型的總結
8.3 Web數據庫架構
8.4 進一步學習
8.5 下一章
第9章 創建Web數據庫
9.1 使用MySQL監視程序
9.2 登錄到MySQL
9.3 創建數據庫和用戶
9.4 設置用戶與權限
9.5 MySQL權限係統的介紹
9.5.1 最少權限原則
9.5.2 創建用戶:GRANT命令
9.5.3 權限的類型和級彆
9.5.4 REVOKE命令
9.5.5 使用GRANT和REVOKE的例子
9.6 創建一個Web用戶
9.7 使用正確的數據庫
9.8 創建數據庫錶
9.8.1 理解其他關鍵字的意思
9.8.2 理解列的類型
9.8.3 用SHOW和DESCRIBE來查看數據庫
9.8.4 創建索引
9.9 理解MySQL的標識符
9.10 選擇列數據類型
9.10.1 數字類型
9.10.2 日期和時間類型
9.10.3 字符串類型
9.11 進一步學習
9.12 下一章
第10章 使用MySQL數據庫
10.1 SQL是什麼
10.2 在數據庫中插入數據
10.3 從數據庫中獲取數據
10.3.1 獲取滿足特定條件的數據
10.3.2 從多個錶中獲取數據
10.3.3 以特定的順序獲取數據
10.3.4 分組與閤計數據
10.3.5 選擇要返迴的行
10.3.6 使用子查詢
10.4 更新數據庫記錄
10.5 創建後修改錶
10.6 刪除數據庫中的記錄
10.7 錶的刪除
10.8 刪除整個數據庫
10.9 進一步學習
10.10 下一章
第11章 使用PHP從Web訪問MySQL數據庫
11.1 Web數據庫架構的工作原理
11.2 從Web查詢數據庫的基本步驟
11.2.1 檢查與過濾用戶輸入數據
11.2.2 建立一個連接
11.2.3 選擇使用的數據庫
11.2.4 查詢數據庫
11.2.5 檢索查詢結果
11.2.6 從數據庫斷開連接
11.3 將新信息放入數據庫
11.4 使用Prepared語句
11.5 使用PHP與數據庫交互的其他接口
11.5.1 使用常規的數據庫接口:PEAR MDB2
11.6 進一步學習
11.7 下一章
第12章 MySQL高級管理
12.1 深入理解權限係統
12.1.1 user錶
12.1.2 db錶和host錶
12.1.3 tables_priv錶,columns_priv錶和procs_priv錶
12.1.4 訪問控製:MySQL如何使用Grant錶
12.1.5 更新權限:修改什麼時候生效
12.2 提高MySQL數據庫的安全性
12.2.1 從操作係統角度來保護MySQL
12.2.2 密碼
12.2.3 用戶權限
12.2.4 Web問題
12.3 獲取更多關於數據庫的信息
12.3.1 使用SHOW獲取信息
12.3.2 使用DESCRIBE獲取關於列的信息
12.3.3 用EXPLAIN理解查詢操作的工作過程
12.4 數據庫的優化
12.4.1 設計優化
12.4.2 權限
12.4.3 錶的優化
12.4.4 使用索引
12.4.5 使用默認值
12.4.6 其他技巧
12.5 備份MySQL數據庫
12.6 恢復MySQL數據庫
12.7 實現復製
12.7.1 設置主服務器
12.7.2 執行初始的數據傳輸
12.7.3 設置一個/多個從服務器
12.8 進一步學習
12.9 下一章
第13章 MySQL高級編程
13.1 LOAD DATA INFILE語句
13.2 存儲引擎
13.3 事務
13.3.1 理解事務的定義
13.3.2 通過InnoDB使用事務
13.4 外鍵
13.5 存儲過程
13.5.1 基本示例
13.5.2 局部變量
13.5.3 遊標和控製結構
13.6 進一步學習
13.7 下一章
第三篇 電子商務與安全性
第14章 運營一個電子商務網站
14.1 我們要實現什麼目標
14.2 考慮電子商務網站的類型
14.2.1 使用在綫說明書公布信息
14.2.2 接收産品或服務的訂單
14.2.3 提供服務和數字産品
14.2.4 為産品或服務增值
14.2.5 減少成本
14.3 理解風險和威脅
14.3.1 網絡黑客
14.3.2 不能招攬足夠的生意
14.3.3 計算機硬件故障
14.3.4 電力、通信、網絡或運輸故障
14.3.5 廣泛的競爭
14.3.6 軟件錯誤
14.3.7 不斷變化的政府政策和稅收
14.3.8 係統容量限製
14.4 選擇一個策略
14.5 下一章
第15章 電子商務的安全問題
15.1 信息的重要程度
15.2 安全威脅
15.2.1 機密數據的泄露
15.2.2 數據丟失和數據破壞
15.2.3 數據修改
15.2.4 拒絕服務
15.2.5 軟件錯誤
15.2.6 否認
15.3 易用性,性能、成本和安全性
15.4 建立一個安全政策
15.5 身份驗證原則
15.6 加密技術基礎
15.6.1 私有密鑰加密
15.6.2 公有密鑰加密
15.6.3 數字簽名
15.7 數字證書
15.8 安全的Web服務器
15.9 審計與日誌記錄
15.10 防火牆
15.11 備份數據
15.11.1 備份常規文件
15.11.2 備份與恢復MySQL數據庫
15.12 自然環境安全
15.13 下一章
第16章 Web應用的安全
16.1處理安全性問題的策略
16.1.1 以正確心態為開始
16.1.2 安全性和可用性之間的平衡
16.1.3 安全監視
16.1.4 基本方法
16.2 識彆所麵臨的威脅
16.2.1 訪問或修改敏感數據
16.2.2 數據丟失或破壞
16.2.3 拒絕服務
16.2.4 惡意代碼注入
16.2.5 服務器被攻破
16.3瞭解與我們“打交道”的用戶
16.3.1 破解人員
16.3.2 受影響機器的未知情用戶
16.3.3 對公司不滿的員工
16.3.4 硬件被盜
16.3.5 我們自身
16.4 代碼的安全性
16.4.1 過濾用戶輸入
16.4.2 轉義輸齣
16.4.3 代碼組織
16.4.4 代碼自身的問題
16.4.5 文件係統因素
16.4.6 代碼穩定性和缺陷
16.4.7 執行引號和exec
16.5 Web服務器和PHP的安全性
16.5.1 保持軟件的更新
16.5.2 查看php.ini文件
16.5.3 Web服務器配置
16.5.4 Web應用的商業主機服務
16.6 數據庫服務器的安全性
16.6.1 用戶和權限係統
16.6.2發送數據至服務器
16.6.3 連接服務器
16.6.4 運行服務器
16.7 保護網絡
16.7.1 安裝防火牆
16.7.2使用隔離區域(DMZ)
16.7.3應對DoS和DDoS攻擊
16.8 計算機和操作係統的安全性
16.8.1 保持操作係統的更新
16.8.2隻運行必須的軟件
16.8.3 服務器的物理安全性
16.9 災難計劃
16.10 下一章
第17章 使用PHP和MySQL實現身份驗證
17.1 識彆訪問者
17.2 實現訪問控製
17.2.1 保存密碼
17.2.2 密碼的加密
17.2.3 保護多個網頁
17.3 使用基本身份驗證
17.4 在PHP中使用基本身份驗證
17.5 在Apache的.htaccess文件中使用基本身份驗證
17.6 使用mod_auth_mysql身份驗證
17.6.1 安裝mod_auth_mysql
17.6.2 使用mod_auth_mysql
17.7 創建自定義身份驗證
17.8 進一步學習
17.9 下一章
第18章 使用PHP和MySQL實現安全事務
18.1 提供安全的事務處理
18.1.1 用戶機器
18.1.2 Internet
18.1.3 我們的係統
18.2 使用加密套接字層(SSL)
18.3 屏蔽用戶的輸入
18.4 提供安全存儲
18.5 存儲信用卡號碼
18.6 在PHP中使用加密技術
18.6.1 安裝GPG
18.6.2 測試GPG
18.7 進一步學習
18.8 下一章
第四篇 PHP的高級技術
第19章 與文件係統和服務器的交互
19.1 文件上載
19.1.1 文件上載的HTML代碼
19.1.2 編寫處理文件的PHP
19.1.3 避免常見上載問題
19.2 使用目錄函數
19.2.1 從目錄讀取
19.2.2 獲得當前目錄的信息
19.2.3 創建和刪除目錄
19.3 與文件係統的交互
19.3.1 獲取文件信息
19.3.2 更改文件屬性
19.3.3 創建、刪除和移動文件
19.4 使用程序執行函數
19.5 與環境變量交互:getenv()和putenv()
19.6 進一步學習
19.7 下一章
第20章 使用網絡函數和協議函數
20.1 瞭解可供使用的協議
20.2 發送和讀取電子郵件
20.3 使用其他Web站點的數據
20.4 使用網絡查找函數
20.5 備份或鏡像一個文件
20.5.1 使用FTP備份或鏡像一個文件
20.5.2 上傳文件
20.5.3 避免超時
20.5.4 使用其他的FTP函數
20.6 進一步學習
20.7 下一章
第21章 日期和時間的管理
21.1 在PHP中獲取日期和時間
21.1.1 使用date()函數
21.1.2 使用UNIX時間戳
21.1.3 使用getdate()函數
21.1.4 使用checkdate()函數檢驗日期有效性
21.1.5 格式化時間戳
21.2 在PHP日期格式和MySQL日期格式之間進行轉換
21.3 在PHP中計算日期
21.4 在MySQL中計算日期
21.5 使用微秒
21.6 使用日曆函數
21.7 進一步學習
21.8 下一章
第22章 創建圖像
22.1 在PHP中設置圖像支持
22.2 理解圖像格式
22.2.1 JPEG
22.2.2 PNG
22.2.3 WBMP
22.2.4 GIF
22.3 創建圖像
22.3.1 創建一個背景圖像
22.3.2 在圖像上繪圖或打印文本
22.3.3 輸齣最終圖形
22.3.4 清理
22.4 在其他頁麵中使用自動生成的圖像
22.5 使用文本和字體創建圖像
22.5.1 創建基本畫布
22.5.2 將文本調整到適閤按鈕
22.5.3 放置文本
22.5.4 將文本寫到按鈕上
22.5.5 完成
22.6 繪製圖像與用圖錶描繪數據
22.7 使用其他的圖像函數
22.8 進一步學習
22.9 下一章
第23章 在PHP中使用會話控製
23.1 什麼是會話控製
23.2 理解基本的會話功能
23.2.1 什麼是cookie
23.2.2 通過PHP設置cookie
23.2.3 在會話中使用cookie
23.2.4 存儲會話 ID
23.3 實現簡單的會話
23.3.1 開始一個會話
23.3.2 注冊一個會話變量
23.3.3 使用會話變量
23.3.4 注銷變量與銷毀會話
23.4 創建一個簡單的會話例子
23.5 配置會話控製
23.6 通過會話控製實現身份驗證
23.7 進一步學習
23.8 下一章
第24章 其他有用的特性
24.1 使用eval()函數對字符串求值
24.2 終止執行:die和exit
24.3 序列化變量和對象
24.4 獲取PHP環境信息
24.4.1 找到所加載的PHP擴展部件
24.4.2 識彆腳本所有者
24.4.3 確定腳本最近修改時間
24.5 暫時改變運行時環境
24.6 源代碼加亮
24.7 在命令行中使用PHP
24.8 下一章
第五篇 創建實用的PHP和MySQL項目
第25章 在大型項目中使用PHP和MySQL
25.1 在Web開發中應用軟件工程
25.2 規劃和運行Web應用程序項目
25.3 重用代碼
25.4 編寫可維護代碼
25.4.1 編碼標準
25.4.2 分解代碼
25.4.3 使用標準的目錄結構
25.4.4 文檔化和共享內部函數
25.5 實現版本控製
25.6 選擇一個開發環境
25.7 項目的文檔化
25.8 建立原型
25.9 將邏輯和內容分離
25.10 優化代碼
25.10.1 使用簡單優化
25.10.2 使用Zend産品
25.11 測試
25.12 進一步學習
25.13 下一章
第26章 調試
26.1 編程錯誤
26.1.1 語法錯誤
26.1.2 運行時錯誤
26.1.3 邏輯錯誤
26.2 使用變量幫助調試
26.3 錯誤報告級彆
26.4 改變錯誤報告設置
26.5 觸發自定義錯誤
26.6 巧妙地處理錯誤
26.7 下一章
第27章 建立用戶身份驗證機製和個性化設置
27.1 解決方案的組成
27.1.1 用戶識彆和個性化設置
27.1.2 保存書簽
27.1.3 推薦書簽
27.2 解決方案概述
27.3 實現數據庫
27.4 實現基本的網站
27.5 實現用戶身份驗證
27.5.1 注冊
27.5.2 登錄
27.5.3 登齣
27.5.4 修改密碼
27.5.5 重設遺忘的密碼
27.6 實現書簽的存儲和檢索
27.6.1 添加書簽
27.6.2 顯示書簽
27.6.3 刪除書簽
27.7 實現書簽推薦
27.8 考慮可能的擴展
27.9 下一章
第28章 創建一個購物車
28.1 解決方案的組成
28.1.1 創建一個在綫目錄
28.1.2 在用戶購買商品的時候記錄購買行為
28.1.3 實現一個付款係統
28.1.4 創建一個管理界麵
28.2 解決方案概述
28.3 實現數據庫
28.4 實現在綫目錄
28.4.1 列齣目錄
28.4.2 列齣一個目錄中的所有圖書
28.4.3 顯示圖書詳細信息
28.5 實現購物車
28.5.1 使用show_cart.php腳本
28.5.2 瀏覽購物車
28.5.3 將物品添加到購物庫
28.5.4 保存更新後的購物車
28.5.5 打印標題欄摘要
28.5.6 結賬
28.6 實現付款
28.7 實現一個管理界麵
28.8 擴展該項目
28.9 使用一個已有係統
28.10 下一章
第29章 創建一個基於Web的電子郵件服務係統
29.1 解決方案的組成
29.1.1 電子郵件協議:POP3和IMAP
29.1.2 PHP對POP3和IMAP的支持
29.2 解決方案概述
29.3 建立數據庫
29.4 瞭解腳本架構
29.5 登錄與登齣
29.6 建立賬戶
29.6.1 創建一個新賬戶
29.6.2 修改已有賬戶
29.6.3 刪除賬戶
29.7 閱讀郵件
29.7.1 選擇賬戶
29.7.2 查看郵箱內容
29.7.3 閱讀郵件消息
29.7.4 查看消息標題
29.7.5 刪除郵件
29.8 發送郵件
29.8.1 發送一則新消息
29.8.2 迴復或轉發郵件
29.9 擴展這個項目
29.10 下一章
第30章 創建一個郵件列錶管理器
30.1 解決方案的組成
30.1.1 建立列錶和訂閱者數據庫
30.1.2 上載新聞信件
30.1.3 發送帶附件的郵件
30.2 解決方案概述
30.3 建立數據庫
30.4 定義腳本架構
30.5 實現登錄
30.5.1 新賬戶的創建
30.5.2 登錄
30.6 用戶函數的實現
30.6.1 查看列錶
30.6.2 查看郵件列錶信息
30.6.3 查看郵件列錶存檔
30.6.4 訂閱與取消訂閱
30.6.5 更改賬戶設置
30.6.6 更改密碼
30.6.7 登齣
30.7 管理功能的實現
30.7.1 創建新的郵件列錶
30.7.2 上載新的新聞信件
30.7.3 多文件上載的處理
30.7.4 預覽新聞信件
30.7.5 發送郵件
30.8 擴展這個項目
30.9 下一章
第31章 創建一個Web論壇
31.1 理解流程
31.2 解決方案的組成
31.3 解決方案概述
31.4 數據庫的設計
31.5 查看文章的樹型結構
31.5.1 展開和摺疊
31.5.2 顯示文章
31.5.3 使用treenode類
31.6 查看單個的文章
31.7 添加新文章
31.8 添加擴充
31.9 使用一個已有的係統
31.10 下一章
第32章 生成PDF格式的個性化文檔
32.1 項目概述
32.1.1 評估文檔格式
32.2 解決方案的組成
32.2.1 問題與迴答係統
32.2.2 文檔生成軟件
32.3 解決方案概述
32.3.1 提問
32.3.2 給答題評分
32.3.3 生成RTF證書
32.3.4 從模闆生成PDF證書
32.3.5 使用PDFlib生成PDF文檔
32.3.6 使用PDFlib的一個“Hello World”程序
32.3.7 用PDFlib生成證書
32.4 處理標題的問題
32.5 擴展該項目
32.6 下一章
第33章 使用XML和SOAP來連接Web服務
33.1 項目概述:使用XML和Web服務
33.1.1 理解XML
33.1.2 理解Web服務
33.2 解決方案的組成
33.2.1 使用Amazon的Web服務接口
33.2.2 XML的解析:REST響應
33.2.3 在PHP中使用SOAP
33.2.4 緩存
33.3 解決方案概述
33.3.1 核心應用程序
33.3.2 顯示特定種類的圖書
33.3.3 獲得一個AmazonResultSet類
33.3.4 使用REST發送和接收請求
33.3.5 使用SOAP發送和接收請求
33.3.6 緩存請求返迴的數據
33.3.7 創建購物車
33.3.8 到Amazon付賬
33.4 安裝項目代碼
33.5 擴展這個項目
33.6 進一步學習
第34 章使用Ajax構建Web 2.0應用
34.1 Ajax 是什麼?
34.1.1 HTTP請求和響應
34.1. 2 DHTML和XHTML
34.1.3 級聯樣式單(CSS)
34.1.4 客戶端編程
34.1.5 服務器端編程
34.1.6 XML和XSLT
34.2 Ajax基礎
34.2.1 XMLHTTPRequest對象
34.2.2 與服務器通信
34.2.3 處理服務器響應
34.2.4 整閤應用
34.3 在以前的項目添加Ajax元素
34.3.1在PHPBookmark應用中添加Ajax元素
34.4 進一步學習
34.4.1 進一步瞭解文檔對象模型(DOM)
34.4.2 Ajax應用可用的JavaScript函數庫
34.4.3 Ajax開發人員網站
第六篇 附錄
附錄A 安裝PHP及MySQL
附錄B Web資源
第1章 PHP快速入門教程
第2章 數據的存儲與檢索
第3章 使用數組
第4章 字符串操作與正則錶達式
第5章 代碼重用與函數編寫
第6章 麵嚮對象的PHP
第7章 錯誤和異常處理
· · · · · · (
收起)