本書詳細說明了PHP的使用方法,內容涉及PHP套用的各個方面,並提供了大量的代碼實例,使讀者能夠快速而容易地學會PHP。每一章都分為兩部分,前一部分“深入分析”詳細說明相關的技術信息,
基本介紹
- 中文名:PHP技術內幕
- 作者:穆丁
- 譯者:賀民
- 資源格式:PDF
出版信息,內容簡介,目錄,
出版信息
中文名:PHP技術內幕
版本:中文版
出版社:中國水利水電出版社
書號:750841280X
發行時間:2003年
地區:大陸
內容簡介
本書詳細說明了PHP的使用方法,內容涉及PHP套用的各個方面,並提供了大量的代碼實例,使讀者能夠快速而容易地學會PHP。每一章都分為兩部分,前一部分“深入分析”詳細說明相關的技術信息,後一部分“快速解決方案”針對問題提供快速解決之道,可以幫助讀者運用知識,解決問題,以及快速掌握複雜的技術要點,從而成為PHP專家。
本書內容豐富而全面,具有實用性,適用於各個層次的PHP程式設計師。
目錄
第1章 PHP概述
1.1 深入分析
1.1.1 編程基礎
1.1.2 PHP的優點
1.1.3 PHP4
1.1.4 PHP與Apache
1.1.5 PHP語法概述
1.2 快速解決方案
1.2.1 Apache配置
1.2.2 特殊的Apache函式
1.2.3 PHP配置
1.2.4 診斷
1.2.5 錯誤
1.2.6 記錄
1.2.7 輸出控制
1.2.8 安全性
1.2.9 正則表達式
第2章 數據
2.1 深入分析
2.1.1 數據類型
2.1.2 數據處理
2.1.3 日期與時間
2.1.4 算術
2.2 快速解決方案
2.2.1 數據創建
2.2.2 數據測試
2.2.3 數據轉換
2.2.4 字元串函式
2.2.5 rand()、srand()和microtime()
2.2.6 日期或時間計算
2.2.7 復活節
第3章 數組
3.1 深入分析
3.1.1 簡單數組
3.1.2 潛在問題
3.1.3 多維數組
3.1.4 數組指針
3.1.5 數組排序
3.1.6 入棧、出棧、填充與合併
3.2 快速解決方案
3.2.1 使用array()從列表創建數組
3.2.2 使用explode()從字元串創建數組
3.2.3 使用implode()從數組創建字元串
3.2.4 使用range()指定元素的範圍
3.2.5 使用range()和array flip()指定鍵的範圍
3.2.6 使用array_flip刪除重複的數組值
3.2.7 使用shuffle()隨機排列數組
3.2.8 使用array_rand()隨機排列橫幅
3.2.9 使用file()將檔案讀入數組
3.2.10 使用sort()將數組按值排序
3.2.11 使用asort()將關聯數組按值排序
3.2.12 使用rsort()將數組按值反序排序
3.2.13 使用arsort()將關聯數組按值反序排序
3.2.14 使用ksort()將關聯數組按鍵排序
3.2.15 使用nasort()將數組按值自然排序
3.2.16 使用usort()將數組非自然排序
3.2.17 向後循環遍歷數組
3.2.18 循環遍歷多維數組
第4章 信用卡
4.1 深入分析
4.1.1 商業賬戶
4.1.2 安全
4.1.3 伺服器
4.1.4 哈希法
4.1.5 加密
4.1.6 付款軟體
4.2 快速解決方案
4.2.1 哈希數據
第5章 資料庫:MySQL與PostgreSQL
5.1 深入分析
5.1.1 歷史
5.1.2 一些區別
5.1.3 數據類型
5.1.4 平台無關性
5.1.5 原始數據轉入資料庫
5.1.6 數組與資料庫
5.1.7 索引或不索引
5.1.8 關係
5.1.9 ODBC
5.2 快速解決方案
5.2.1 連線資料庫
5.2.2 資料庫列表
5.2.3 顯示資料庫表
5.2.4 顯示錶欄位
5.2.5 顯示錶數據
5.2.6 插入數據行
5.2.7 創建資料庫
5.2.8 創建表
5.2.9 會話中使用資料庫
5.2.10 清理代碼
第6章 與眾不同的商用資料庫
6.1 深入分析
6.1.1 SQL
6.1.2 索引或不用索引
6.1.3 關係
6.1.4 持久連線
6.1.5 ODBC
6.1.6 DB2
6.1.7 SAP DB
6.1.8 其他資料庫
6.1.9 資料庫抽象層
6.2 快速解決方案
6.2.1 用ODBC訪問資料庫
6.2.2 用DBA函式訪問資料庫
6.2.3 用DBM函式訪問資料庫
6.2.4 用DBX函式訪問資料庫
6.2.5 訪問Ingres II
6.2.6 定時檢索:通往高性能之路
第7章 環境因素
7.1 深入分析
7.1.1 Apache
7.1.2 PHP的配置
7.1.3 安全
7.1.4 批處理模式下的PHP
7.1.5 為PHP制定進度
7.1.6 COM
7.1.7 檔案和目錄名稱
7.1.8 POSIX
7.1.9 為程式間互動提供幫助
7.1.10 外部程式
7.1.11 附加信息
7.1.12 mnoGoSearch函式
7.2 快速解決方案
7.2.1 清除舊檔案
7.2.2 執行外部程式
7.2.3 使用COM將Word文檔轉換成RTF格式
7.2.4 HTTP身份驗證示例
7.2.5 更改代碼和環境相匹配
7.2.6 測試記憶體
7.2.7 不規則的格式化輸出
7.2.8 確保圖像安全
第8章 檔案
8.1 深入分析
8.1.1 目錄
8.1.2 檔案類型
8.1.3 上傳檔案
8.1.4 檔案列表快取
8.1.5 許可權
8.2 快速解決方案
8.2.1 列目錄
8.2.2 創建和刪除目錄
8.2.3 列出檔案及屬性
8.2.4 報告磁碟空間
8.2.5 列出圖像檔案屬性
8.2.6 顯示任何數據
8.2.7 創建空檔案
8.2.8 上傳檔案
8.2.9 計算檔案的CRC
第9章 表單
9.1 深入分析
9.1.1 可選的導航
9.1.2 用HTML還是只用PHP
9.1.3 最少的HTML
9.1.4 特殊功能
9.1.5 多個動作
9.1.6 JavaScript
9.1.7 長表單
9.1.8 上傳檔案
9.2 快速解決方案
9.2.1 創建表單
9.2.2 用函式創建表單
9.2.3 在表單中創建長列表
9.2.4 對齊列
9.2.5 多選一
9.2.6 使用單選按鈕多選一
9.2.7 多選多
9.2.8 保留答案並強調錯誤
第10章 函式
10.1 深入分析
10.1.1 世界上最短的函式
10.1.2 返回值
10.1.3 提供值
10.1.4 可選值
10.1.5 可變數目的輸入欄位
10.1.6 作用域
10.1.7 靜態變數
10.1.8 遞歸
10.1.9 變數中命名的函式
10.1.10 順序
10.2 快速解決方案
10.2.1 創建函式
10.2.2 聲明全局變數
10.2.3 聲明靜態變數
10.2.4 在變數中存儲函式
10.2.5 使用默認函式參數
10.2.6 檢查函式的存在性
10.2.7 使用call_user_func()
10.2.8 使用create_function()
10.2.9 使用func_get_arg()和func_num_args()
10.2.10 使用func_get_args()
10.2.11 註冊終止函式
第11章 圖像
11.1 深入分析
11.1.1 GIF
11.1.2 PNG
11.1.3 JPEG
11.1.4 PDF
11.1.5 Flash和Shockwave
11.1.6 圖像資料庫
11.1.7 安裝圖像模組
11.1.8 顯示圖像
11.1.9 創建圖像
11.1.10 改變圖像
11.1.11 外部程式
11.1.12 選擇正確的格式
11.2 快速解決方案
11.2.1 列出圖像+
11.2.2 用ClibPDF在PDF文檔中創建文本
11.2.3 用PDFlib在PDF文檔中創建文本
11.2.4 在GIF、JPEG或PNG圖像中創建文本
11.2.5 在GIF、JPEG或PNG圖像中創建圖形
第12章 國際套用
12.1 深入分析
12.1.1 檢測語言和國家
12.1.2 語言需求
12.1.3 特定套用與特定地區
12.1.4 GNU重新編碼
12.1.5 GNU gettext
12.1.6 拼寫
12.1.7 多位元組字元
12.2 快速解決方案
12.2.1 建立國家信息
12.2.2 存儲國家信息
12.2.3 檢索國家信息
12.2.4 為國家信息使用會話
12.2.5 使用GNU Gettext找出其他語言中的訊息
12.2.6 使用SQL找出其他語言中的文本
12.2.7 檢查字元類型
12.2.8 使用levenshtein()比較短語和地名
第13章 Internet
13.1 深入分析
13.1.1 URL
13.1.2 瀏覽其他伺服器
13.1.3 套接字函式
13.1.4 SNMP
13.1.5 Curl
13.1.6 FTP
13.2 快速解決方案
13.2.1 Base64編碼
13.2.2 使用PHP瀏覽網路
13.2.3 驗證連結
13.2.4 使用FTP函式
13.2.5 使用Curl
第14章 LDAP
14.1 深入分析
14.1.1 安裝
14.1.2 術語
14.1.3 伺服器功能
14.1.4 LDAP函式
14.2 快速解決方案
14.2.1 在Windows NT中安裝LDAP
14.2.2 連線到LDAP
14.2.3 添加國家代碼
14.2.4 添加用戶
14.2.5 處理錯誤
14.2.6 列出所有項
第15章 郵件
15.1 深入分析
15.1.1 IMAP
15.1.2 郵件頭
15.1.3 MIME
15.1.4 操作模式
15.2 快速解決方案
15.2.1 安裝PHP郵件函式
15.2.2 傳送郵件
15.2.3 傳送有附屬檔案的郵件
15.2.4 確認郵件地址
第16章 網路
16.1 深入分析
16.1.1 調試器
16.1.2 DNS和MX記錄
16.1.3 主機名
16.1.4 IP位址
16.1.5 協定名稱和編號
16.1.6 套接字
16.1.7 系統日誌
16.1.8 NFS
16.1.9 NIS
16.1.10 WDDX
16.1.11 CORBA
16.1.12 壓縮
16.2 快速解決方案
16.2.1 檢查DNS記錄
16.2.2 獲得MX記錄
16.2.3 獲得主機名
16.2.4 列出協定編號
16.2.5 使用WDDX序列化數據
16.2.6 使用zlib壓縮數據
16.2.7 寫私有日誌
第17章 對象
17.1 深入分析
17.1.1 類
17.1.2 屬性
17.1.3 方法
17.1.4 擴展類
17.1.5 軟體分發和文檔
17.2 快速解決方案
17.2.1 在會話中存儲對象並使用——sleep()
17.2.2 使用對象函式
17.2.3 用對象定製網頁
17.2.4 讀取新聞
第18章 搜尋
18.1 深入分析
18.1.1 搜尋搜尋引擎
18.1.2 Z39.50
18.1.3 YAZ
18.1.4 使用YAZ搜尋
18.1.5 基於資料庫的搜尋
18.2 快速解決方案
18.2.1 在伺服器上搜尋
18.2.2 搜尋多個伺服器
18.2.4 索引數據
第19章 會話
19.1 深入分析
19.1.1 對所有者的好處
19.1.2 對訪問者的好處
19.1.3 會話標識符
19.1.4 Cookie
19.1.5 檔案與資料庫
19.1.6 PHP工具
19.1.7 客戶服務
19.2 快速解決方案
19.2.1 使用Cookie和檔案開始會話
19.2.2 使用MySQL開始會話
19.2.3 顯示當前用戶
19.2.4 使用session_end()
第20章 XML
20.1 深入分析
20.1.1 什麼是XML
20.1.2 數據
20.1.3 結構
20.1.4 XML函式
20.1.5 XSLT
20.1.6 WDDX
20.1.7 DOM
20.2 快速解決方案
20.2.1 顯示XML檔案
20.2.2 顯示XML數據
20.2.3 解析XML數據
20.2.4 匹配XML的開始和結束標記
1.1 深入分析
1.1.1 編程基礎
1.1.2 PHP的優點
1.1.3 PHP4
1.1.4 PHP與Apache
1.1.5 PHP語法概述
1.2 快速解決方案
1.2.1 Apache配置
1.2.2 特殊的Apache函式
1.2.3 PHP配置
1.2.4 診斷
1.2.5 錯誤
1.2.6 記錄
1.2.7 輸出控制
1.2.8 安全性
1.2.9 正則表達式
第2章 數據
2.1 深入分析
2.1.1 數據類型
2.1.2 數據處理
2.1.3 日期與時間
2.1.4 算術
2.2 快速解決方案
2.2.1 數據創建
2.2.2 數據測試
2.2.3 數據轉換
2.2.4 字元串函式
2.2.5 rand()、srand()和microtime()
2.2.6 日期或時間計算
2.2.7 復活節
第3章 數組
3.1 深入分析
3.1.1 簡單數組
3.1.2 潛在問題
3.1.3 多維數組
3.1.4 數組指針
3.1.5 數組排序
3.1.6 入棧、出棧、填充與合併
3.2 快速解決方案
3.2.1 使用array()從列表創建數組
3.2.2 使用explode()從字元串創建數組
3.2.3 使用implode()從數組創建字元串
3.2.4 使用range()指定元素的範圍
3.2.5 使用range()和array flip()指定鍵的範圍
3.2.6 使用array_flip刪除重複的數組值
3.2.7 使用shuffle()隨機排列數組
3.2.8 使用array_rand()隨機排列橫幅
3.2.9 使用file()將檔案讀入數組
3.2.10 使用sort()將數組按值排序
3.2.11 使用asort()將關聯數組按值排序
3.2.12 使用rsort()將數組按值反序排序
3.2.13 使用arsort()將關聯數組按值反序排序
3.2.14 使用ksort()將關聯數組按鍵排序
3.2.15 使用nasort()將數組按值自然排序
3.2.16 使用usort()將數組非自然排序
3.2.17 向後循環遍歷數組
3.2.18 循環遍歷多維數組
第4章 信用卡
4.1 深入分析
4.1.1 商業賬戶
4.1.2 安全
4.1.3 伺服器
4.1.4 哈希法
4.1.5 加密
4.1.6 付款軟體
4.2 快速解決方案
4.2.1 哈希數據
第5章 資料庫:MySQL與PostgreSQL
5.1 深入分析
5.1.1 歷史
5.1.2 一些區別
5.1.3 數據類型
5.1.4 平台無關性
5.1.5 原始數據轉入資料庫
5.1.6 數組與資料庫
5.1.7 索引或不索引
5.1.8 關係
5.1.9 ODBC
5.2 快速解決方案
5.2.1 連線資料庫
5.2.2 資料庫列表
5.2.3 顯示資料庫表
5.2.4 顯示錶欄位
5.2.5 顯示錶數據
5.2.6 插入數據行
5.2.7 創建資料庫
5.2.8 創建表
5.2.9 會話中使用資料庫
5.2.10 清理代碼
第6章 與眾不同的商用資料庫
6.1 深入分析
6.1.1 SQL
6.1.2 索引或不用索引
6.1.3 關係
6.1.4 持久連線
6.1.5 ODBC
6.1.6 DB2
6.1.7 SAP DB
6.1.8 其他資料庫
6.1.9 資料庫抽象層
6.2 快速解決方案
6.2.1 用ODBC訪問資料庫
6.2.2 用DBA函式訪問資料庫
6.2.3 用DBM函式訪問資料庫
6.2.4 用DBX函式訪問資料庫
6.2.5 訪問Ingres II
6.2.6 定時檢索:通往高性能之路
第7章 環境因素
7.1 深入分析
7.1.1 Apache
7.1.2 PHP的配置
7.1.3 安全
7.1.4 批處理模式下的PHP
7.1.5 為PHP制定進度
7.1.6 COM
7.1.7 檔案和目錄名稱
7.1.8 POSIX
7.1.9 為程式間互動提供幫助
7.1.10 外部程式
7.1.11 附加信息
7.1.12 mnoGoSearch函式
7.2 快速解決方案
7.2.1 清除舊檔案
7.2.2 執行外部程式
7.2.3 使用COM將Word文檔轉換成RTF格式
7.2.4 HTTP身份驗證示例
7.2.5 更改代碼和環境相匹配
7.2.6 測試記憶體
7.2.7 不規則的格式化輸出
7.2.8 確保圖像安全
第8章 檔案
8.1 深入分析
8.1.1 目錄
8.1.2 檔案類型
8.1.3 上傳檔案
8.1.4 檔案列表快取
8.1.5 許可權
8.2 快速解決方案
8.2.1 列目錄
8.2.2 創建和刪除目錄
8.2.3 列出檔案及屬性
8.2.4 報告磁碟空間
8.2.5 列出圖像檔案屬性
8.2.6 顯示任何數據
8.2.7 創建空檔案
8.2.8 上傳檔案
8.2.9 計算檔案的CRC
第9章 表單
9.1 深入分析
9.1.1 可選的導航
9.1.2 用HTML還是只用PHP
9.1.3 最少的HTML
9.1.4 特殊功能
9.1.5 多個動作
9.1.6 JavaScript
9.1.7 長表單
9.1.8 上傳檔案
9.2 快速解決方案
9.2.1 創建表單
9.2.2 用函式創建表單
9.2.3 在表單中創建長列表
9.2.4 對齊列
9.2.5 多選一
9.2.6 使用單選按鈕多選一
9.2.7 多選多
9.2.8 保留答案並強調錯誤
第10章 函式
10.1 深入分析
10.1.1 世界上最短的函式
10.1.2 返回值
10.1.3 提供值
10.1.4 可選值
10.1.5 可變數目的輸入欄位
10.1.6 作用域
10.1.7 靜態變數
10.1.8 遞歸
10.1.9 變數中命名的函式
10.1.10 順序
10.2 快速解決方案
10.2.1 創建函式
10.2.2 聲明全局變數
10.2.3 聲明靜態變數
10.2.4 在變數中存儲函式
10.2.5 使用默認函式參數
10.2.6 檢查函式的存在性
10.2.7 使用call_user_func()
10.2.8 使用create_function()
10.2.9 使用func_get_arg()和func_num_args()
10.2.10 使用func_get_args()
10.2.11 註冊終止函式
第11章 圖像
11.1 深入分析
11.1.1 GIF
11.1.2 PNG
11.1.3 JPEG
11.1.4 PDF
11.1.5 Flash和Shockwave
11.1.6 圖像資料庫
11.1.7 安裝圖像模組
11.1.8 顯示圖像
11.1.9 創建圖像
11.1.10 改變圖像
11.1.11 外部程式
11.1.12 選擇正確的格式
11.2 快速解決方案
11.2.1 列出圖像+
11.2.2 用ClibPDF在PDF文檔中創建文本
11.2.3 用PDFlib在PDF文檔中創建文本
11.2.4 在GIF、JPEG或PNG圖像中創建文本
11.2.5 在GIF、JPEG或PNG圖像中創建圖形
第12章 國際套用
12.1 深入分析
12.1.1 檢測語言和國家
12.1.2 語言需求
12.1.3 特定套用與特定地區
12.1.4 GNU重新編碼
12.1.5 GNU gettext
12.1.6 拼寫
12.1.7 多位元組字元
12.2 快速解決方案
12.2.1 建立國家信息
12.2.2 存儲國家信息
12.2.3 檢索國家信息
12.2.4 為國家信息使用會話
12.2.5 使用GNU Gettext找出其他語言中的訊息
12.2.6 使用SQL找出其他語言中的文本
12.2.7 檢查字元類型
12.2.8 使用levenshtein()比較短語和地名
第13章 Internet
13.1 深入分析
13.1.1 URL
13.1.2 瀏覽其他伺服器
13.1.3 套接字函式
13.1.4 SNMP
13.1.5 Curl
13.1.6 FTP
13.2 快速解決方案
13.2.1 Base64編碼
13.2.2 使用PHP瀏覽網路
13.2.3 驗證連結
13.2.4 使用FTP函式
13.2.5 使用Curl
第14章 LDAP
14.1 深入分析
14.1.1 安裝
14.1.2 術語
14.1.3 伺服器功能
14.1.4 LDAP函式
14.2 快速解決方案
14.2.1 在Windows NT中安裝LDAP
14.2.2 連線到LDAP
14.2.3 添加國家代碼
14.2.4 添加用戶
14.2.5 處理錯誤
14.2.6 列出所有項
第15章 郵件
15.1 深入分析
15.1.1 IMAP
15.1.2 郵件頭
15.1.3 MIME
15.1.4 操作模式
15.2 快速解決方案
15.2.1 安裝PHP郵件函式
15.2.2 傳送郵件
15.2.3 傳送有附屬檔案的郵件
15.2.4 確認郵件地址
第16章 網路
16.1 深入分析
16.1.1 調試器
16.1.2 DNS和MX記錄
16.1.3 主機名
16.1.4 IP位址
16.1.5 協定名稱和編號
16.1.6 套接字
16.1.7 系統日誌
16.1.8 NFS
16.1.9 NIS
16.1.10 WDDX
16.1.11 CORBA
16.1.12 壓縮
16.2 快速解決方案
16.2.1 檢查DNS記錄
16.2.2 獲得MX記錄
16.2.3 獲得主機名
16.2.4 列出協定編號
16.2.5 使用WDDX序列化數據
16.2.6 使用zlib壓縮數據
16.2.7 寫私有日誌
第17章 對象
17.1 深入分析
17.1.1 類
17.1.2 屬性
17.1.3 方法
17.1.4 擴展類
17.1.5 軟體分發和文檔
17.2 快速解決方案
17.2.1 在會話中存儲對象並使用——sleep()
17.2.2 使用對象函式
17.2.3 用對象定製網頁
17.2.4 讀取新聞
第18章 搜尋
18.1 深入分析
18.1.1 搜尋搜尋引擎
18.1.2 Z39.50
18.1.3 YAZ
18.1.4 使用YAZ搜尋
18.1.5 基於資料庫的搜尋
18.2 快速解決方案
18.2.1 在伺服器上搜尋
18.2.2 搜尋多個伺服器
18.2.4 索引數據
第19章 會話
19.1 深入分析
19.1.1 對所有者的好處
19.1.2 對訪問者的好處
19.1.3 會話標識符
19.1.4 Cookie
19.1.5 檔案與資料庫
19.1.6 PHP工具
19.1.7 客戶服務
19.2 快速解決方案
19.2.1 使用Cookie和檔案開始會話
19.2.2 使用MySQL開始會話
19.2.3 顯示當前用戶
19.2.4 使用session_end()
第20章 XML
20.1 深入分析
20.1.1 什麼是XML
20.1.2 數據
20.1.3 結構
20.1.4 XML函式
20.1.5 XSLT
20.1.6 WDDX
20.1.7 DOM
20.2 快速解決方案
20.2.1 顯示XML檔案
20.2.2 顯示XML數據
20.2.3 解析XML數據
20.2.4 匹配XML的開始和結束標記