《PHP必須知道的300個問題》是2012年清華大學出版社出版的圖書,作者是潘凱華。
該書以PHP基礎知識結構為框架,給出了每部分知識中可能遇到的疑難問題或開發技巧。
基本介紹
- 書名:PHP必須知道的300個問題
- 作者:潘凱華
- ISBN:978-7-302-27204-5
- 定價:59.80
- 出版社:清華大學出版社
- 出版時間:2012.01
- 裝幀:平裝
內容簡介,圖書目錄,
內容簡介
本書所涉及的疑難問題都是一線開發人員在實際項目中經常遇到的,針對這些問題給出了解決方案,並進行了技術上的解析。讀者通過對本書的學習,能夠提高實際解決問題的能力。
本書提供了源程式、素材,提供了相關的模組庫、案例庫、素材庫、題庫等多種形式的輔助學習資料,還提供迅速及時的微博、QQ、論壇等技術支持。
本書內容詳盡,實例豐富,非常適合作為零基礎學習人員的學習用書和大中專院校師生的學習教材,也適合作為相關培訓機構的師生和軟體開發人員的參考資料。
全書共分為16章,具體包括:PHP開發規範與入門要點、PHP基礎、Web技術、資料庫操作、日期和時間處理、圖形圖像處理、檔案與目錄操作、面向對象的程式設計、資料庫抽象層、Ajax技術、XML技術、PDF技術、PHP與多媒體技術、Smarty模板、ThinkPHP框架和PHP項目開發技巧。
圖書目錄
第1章 PHP開發規範與入門要點
問題1 如何在Windows下配置PHP開發環境?
問題2 如何在Linux下配置PHP開發環境?
問題3 如何搭建IIS+PHP+MySQL環境?
問題4 PHP集成開發環境的特點有哪些?
問題5 如何套用AppServ搭建PHP開發環境?
問題6 如何通過XAMPP配置PHP開發環境?
問題7 XAMPP——Linux版PHP集成化安裝包
問題8 Apache配置檔案全解
問題9 PHP.INI配置檔案全解
問題10 Apache不能處理PHP檔案
問題11 無法找到httpd.h檔案
問題12 Apache不能啟動的解決方法
問題13 如何解決Apache伺服器連線埠衝突?
問題14 如何配置Apache虛擬主機?
問題15 如何動態載入擴展庫?
問題16 register_globals(註冊為全局變數)的開啟與關閉
問題17 為什麼要設定時區?
問題18 如何在Dreamweaver中創建站點?
問題19 如何使用Dreamweaver開發PHP程式?
問題20 如何使用Dreamweaver識別.html的模板檔案?
問題21 如何在Windows下安裝和配置phpMyAdmin?
問題22 如何在Linux下安裝和配置phpMyAdmin?
問題23 如何套用phpMyAdmin修改資料庫的用戶名和密碼?
問題24 如何套用phpMyAdmin創建資料庫與數據表?
問題25 如何套用phpMyAdmin導入和導出MySQL資料庫腳本?
問題26 如何打開magic_quotes_gpc來防止SQL注入?
問題27 如何對錯誤提示信息進行控制?
問題28 如何記錄錯誤日誌?
問題29 如何解決使用MySQL函式導致Apache(IIS)崩潰的問題?
問題30 HTTP Apache錯誤代碼都有哪些?分別代表什麼含義?
第2章 PHP基礎
問題31 提高編程效率的24招
問題32 為什麼頁面之間無法傳遞變數?
問題33 為什麼Win32下Apache2用get方法傳遞中文參數會出錯?
問題34 如何從文本中移除空白內容?
問題35 如何獲取上傳檔案的後綴?
問題36 如何實現貨幣數據的格式化輸出?
問題37 如何解決用substr()函式對中文字元串截取時的亂碼?
問題38 如何獲取多個數組元素的鍵名?
問題39 為什麼$array[str]錯了?
問題40 如何設定PHP的錯誤級別?
問題41 PHP有哪幾種注釋形式?
問題42 如何使用empty()函式判斷文本框是否為空?
問題43 如何使用strlen()函式計算文本長度?
問題44 如何使用copy()函式對檔案進行複製?
問題45 如何在瀏覽器中直接輸出圖像?(fgetc()函式)
問題46 如何關閉危險函式?
問題47 如何將數組中的元素合成字元串?
問題48 如何解決使用empty檢查函式返回結果時報錯?
問題49 如何使用mb_substr函式截取中文字元串?
問題50 如何解決PHP無法執行system()函式的問題?
問題51 如何對查詢關鍵字進行描紅?
問題52 如何對字元串與HTML進行轉換?
問題53 如何禁止違禁詞語?
問題54 如何對字元串進行分割及連線?
問題55 如何將IP位址轉換成對應的數字?
問題56 如何創建新型字元串?
問題57 如何對字元串進行加密解密?
問題58 如何比較字元串的大小?
問題59 如何獲取上傳檔案的擴展名?
問題60 如何控制頁面中輸出字元串的長度?
問題61 如何定義上傳檔案的名稱?
問題62 如何通過字元串截取控制圖像驗證碼的輸出?
問題63 如何打亂字元串中字元的順序?
問題64 如何對字元串進行大小寫轉換?
問題65 函式strstr()、stristr()、strpos()、strrchr() 的區別是什麼?
問題66 if和switch語句有何區別?
問題67 如何防止頁面出現中文亂碼?
第3章 Web技術
問題68 如何列印指定框架中的內容?
問題69 如何使用框架嵌套技術居中顯示框架頁?
問題70 如何為文本框設定唯讀屬性?
問題71 如何實現自動計算金額?
問題72 如何實現複選框中的全選、反選和不選?
問題73 如何對上傳的圖片進行預覽?
問題74 如何製作在頁面右下角彈出漸顯的廣告視窗?
問題75 判斷表單動作的技巧有哪些?
問題76 如何使用JS腳本獲取、輸出標籤內容?
問題77 如何控制客戶端COOKIE?
問題78 COOKIE套用的注意事項有哪些?
問題79 SESSION和COOKIE的區別有哪些?
問題80 如何使用SESSION?
問題81 如何結束所有SESSION?
問題82 如何阻止瀏覽器快取頁面?
問題83 如何控制頁面背景的列印?
問題84 如何實現文字滑動效果?
問題85 如何實現自動登錄?
問題86 如何統計用戶線上時間?
問題87 如何限制用戶訪問網站的時間?
問題88 如何掌控登錄用戶的許可權?
問題89 如何讓SESSION永久有效?
問題90 SESSION購物車
問題91 header()函式都有哪些功能?
第4章 資料庫操作
問題92 MySQL資料庫開發常識有哪些?
問題93 MySQL的常用命令有哪些?
問題94 MySQL數據存儲引擎InnoDB和MyISAM的優勢及區別有哪些?
問題95 如何在MySQL中實現多關鍵字查詢?
問題96 如何在MySQL中修改用戶密碼和創建許可權用戶?
問題97 在MySQL中兩種索引Hash與B-Tree的區別是什麼?
問題98 套用PHP操作MySQL資料庫時應該注意哪些問題?
問題99 套用PHP向MySQL插入數據時,如何避免產生亂碼?
問題100 MySQL常見錯誤代碼有哪些?
問題101 在MySQL中,如何實現多表查詢?
問題102 在MySQL中,如何實現內連線查詢?
問題103 在MySQL中,如何實現外連線查詢?
問題104 在MySQL中,如何實現嵌套查詢?
問題105 如何連線遠程MySQL伺服器?
問題106 如何實現MySQL資料庫的雙機熱備份?
問題107 解決MySQL語句錯誤的最佳方案是什麼?
問題108 如何執行數據的批量添加?
問題109 如何規範地定義數據表中的欄位名稱?
問題110 如何查詢指定時間段的數據?
問題111 如何按月查詢統計數據?
問題112 如何實現在刪除數據前給予提示信息?
問題113 如何查詢日期型數據?
問題114 如何使用左連線(left outer join)查詢數據?
問題115 如何使用右連線(right outer join)查詢數據?
問題116 如何對統計結果進行排序?
問題117 如何使用聚集函式SUM對學生成績進行匯總?
問題118 如何使用聚集函式MIN求利潤最少的商品?
問題119 如何使用聚集函式MAX求銷售利潤最高的商品?
問題120 如何使用INSERT(s1,x,len,s2)函式替換指定字元?
問題121 如何使用UPPER(s)、UCASE(s)函式將字母變成大寫?
問題122 如何利用CSS樣式實現分頁列印?
問題123 如何使用RTRIM(s)函式去掉字元串結尾處的空格?
問題124 MySQL資料庫的備份和恢復
問題125 如何在MySQL中創建存儲過程?
問題126 如何將Access數據導入SQL Server資料庫中?
問題127 如何解決PHP不支持SQL Server的問題?
問題128 如何連線帶密碼的Access資料庫?
問題129 MySQL和Server 2000資料庫中數據類型的轉換
問題130 PHP如何連線SQL Server資料庫?
第5章 日期和時間處理
問題131 如何獲得當前日期?
問題132 如何知道是星期幾?
問題133 如何獲得一個月份的天數?
問題134 如何在MySQL中存儲日期?
問題135 如何使用MySQL時間戳?
問題136 如何實現倒計時?
問題137 如何計算程式的運行時間?
問題138 如何獲取當前系統時間?
問題139 如何實現網頁提醒功能?
第6章 圖形圖像處理
問題140 如何創建縮略圖?
問題141 如何防止圖像被盜鏈?
問題142 在PHP中如何激活和禁止GD2函式館?
問題143 如何在照片上寫文字?
問題144 在GD2函式館中,如何輸出中文字元串?
問題145 如何套用GD2函式為圖片添加圖像水印?
問題146 如何套用GD2函式生成帶有干擾的圖像驗證碼?
問題147 如何通過圖像顯示密碼安全強度?
問題148 如何從圖像中提取EXIF信息?
問題149 如何套用JQuery和Jpgraph製作動態折線圖?
問題150 如何通過Jpgraph類庫輸出中文字元串?
問題151 如何製作數字圖像驗證碼?
問題152 如何製作中文圖像驗證碼?
問題153 如何實現驗證碼在當前頁驗證?
問題154 如何任意調整圖片的大小?
第7章 檔案與目錄操作
問題155 如何限制上傳檔案的大小?
問題156 如何判斷上傳檔案是否符合要求?
問題157 如何通過header()函式進行下載?
問題158 如何實現多檔案同時上傳?
問題159 如何判斷檔案的許可權?
問題160 如何獲取磁碟分區的大小?
問題161 如何遍歷指定目錄下的所有檔案?
問題162 如何套用fopen()函式的選擇模式?
問題163 如何鎖定檔案?
問題164 如何訪問遠程檔案?
問題165 如何讀取本地檔案?
問題166 如何使用檔案句柄?
問題167 如何在檔案中存儲配置信息?
問題168 如何在PHP中創建壓縮的RAR檔案?
問題169 如何在PHP中對RAR檔案進行解壓?
問題170 如何將文本檔案中的數據存儲到資料庫中?
問題171 如何判斷一個遠程的檔案是否存在?
問題172 如何將上傳檔案轉換成RAR檔案?
問題173 如何遍歷、刪除指定目錄下所有檔案?
問題174 如何使用文本檔案統計網站訪問量?
第8章 面向對象的程式設計
問題175 為什麼要面向對象?
問題176 構造方法和析構方法有什麼不同?
問題177 為什麼要封裝?
問題178 如何繼承一個類?
問題179 抽象類與接口的區別是什麼?
問題180 如何封裝一個項目工具類?
問題181 如何將購物車中的功能封裝到購物車類中?
問題182 如何製作柱形圖繪製類?
問題183 如何製作折線圖繪製類?
問題184 如何製作餅形圖繪製類?
問題185 如何封裝驗證碼類?
第9章 資料庫抽象層
問題186 什麼是PDO?
問題187 如何安裝PDO?
問題188 如何通過PDO訪問資料庫?
問題189 如何通過PDO讀取數據表中的數據?
問題190 如何解決SQL查詢中的錯誤?
問題191 如何向資料庫中添加或修改數據?
問題192 如何保護Web站點免受SQL注入攻擊?
問題193 如何獲得受影響的行數?
問題194 如何進行事務處理?
問題195 如何利用PDO使用存儲過程?
問題196 如何利用PDO連線Oracle 11g?
問題197 如何封裝PDO資料庫連線類?
問題198 如何封裝PDO資料庫操作類?
問題199 如何封裝PDO分頁類?
問題200 如何封裝ADODB連線資料庫類?
問題201 ADODB操作結果集的方法有哪些?
問題202 ADODB中如何控制結果集的存取方法?
問題203 如何一次連線兩個資料庫?
問題204 如何在ADODB中生成HTML表格?
問題205 如何在ADODB中生成下拉列表框?
問題206 一個小巧的分頁函式——ADODB_Pager()
問題207 如何通過事務處理機制保證資料庫操作的完整性?
問題208 ADODB如何輸出系統中執行的SQL語句?
問題209 ADODB如何套用errorMsg()函式返回錯誤信息?
問題210 ADODB如何返回所有錯誤信息?
問題211 如何將錯誤信息存儲於日誌檔案中?
問題212 如何封裝ADODB運算元據庫類?
問題213 如何封裝ADODB分頁類?
第10章 Ajax技術
問題214 Ajax不刷新頁面提交表單數據
問題215 Ajax無刷新驗證用戶名是否被占用
問題216 如何套用Ajax技術實現無刷新下拉列表?
問題217 如何實現Ajax無刷新分頁?
問題218 Ajax無刷新倒計時
問題219 如何讓Ajax中的方法熟悉兼容各種不同的瀏覽器?
問題220 jQuery特效複選框的製作方法
問題221 如何使用jQuery技術製作級聯選單?
問題222 如何通過jQuery生成網頁特效?
第11章 XML技術
問題223 如何處理XML中的數據刷新的問題?
問題224 RSS 2.0都包括哪些元素?
問題225 如何創建支持RSS閱讀的站點?
問題226 如何動態創建XML檔案?
問題227 如何動態讀取XML檔案?
問題228 如何查詢XML檔案中的數據?
問題229 如何動態更新XML中的數據?
問題230 如何動態刪除XML中的數據?
問題231 如何通過jQuery讀取XML中的數據?
第12章 PDF技術
問題232 如何創建簡單的PDF文檔?
問題233 如何在PDF中插入圖片?
問題234 如何設定PDF文檔的頁眉與頁腳?
問題235 如何在PDF文檔中繪製表格?
問題236 如何在PDF文檔中輸出中文?
問題237 如何實現PDF文檔下載?
第13章 PHP與多媒體技術
問題238 向Flash中傳遞參數
問題239 如何通過embed標籤播放音樂?
問題240 如何通過object標籤播放音樂?
問題241 如何實現線上音樂中歌詞同步輸出?
問題242 什麼才是音樂線上播放的關鍵?
問題243 (關閉網頁時)Ajax無刷新刪除.m3u格式的檔案
問題244 如何將選定的音樂添加到播放列表中?
問題245 如何判斷線上音樂檔案的地址是否正確?
問題246 如何在網頁中播放FLV檔案?
問題247 如何實現MP3線上點播?
第14章 Smarty模板
問題248 如何安裝和配置Smarty模板?
問題249 如何將Smarty的配置方法封裝到類中?
問題250 如何通過if語句判斷當前用戶的許可權?
問題251 在Smarty模板中,如何生成數字驗證碼?
問題252 在Smarty模板中,如何直接定義CSS樣式?
問題253 在Smarty模板中,如何嵌入JavaScript腳本?
問題254 如何套用html_option函式向下拉列表中添加列表項?
問題255 section語句套用的注意事項有哪些?
問題256 如何通過section循環輸出數據?
問題257 如何對Smarty模板中數據進行分頁顯示?
問題258 在Smarty模板中,如何實現日期、時間的格式化輸出?
問題259 在Smarty模板中,如何套用正則表達式?
問題260 在Smarty模板中,如何對關鍵字描紅?
問題261 在Smarty模板中,如何控制輸出字元串的行寬?
問題262 如何套用register_object方法註冊模板對象?
問題263 如何開啟網站頁面的快取?
問題264 如何判斷同一模板中的多個快取檔案?
問題265 如何通過配置檔案定義變數?
問題266 在Smarty模板中,如何截取中文字元串?
問題267 在Smarty中如何進行編碼?
問題268 如何在Smarty中定義註冊模板函式?
問題269 如何在Smarty中設計頁面?
問題270 如何在Smarty中製作日曆?
問題271 如何套用Smarty+PDO完成數據的分頁顯示?
第15章 ThinkPHP框架
問題272 什麼是ThinkPHP?有哪些特點?在哪裡下載?
問題273 如何自動生成項目目錄?
問題274 ThinkPHP的命名規範有哪些?
問題275 ThinkPHP創建項目的基本流程是什麼?
問題276 如何套用ThinkPHP中的CURD操作用戶信息?
問題277 如何套用ThinkPHP實現用戶登錄和數據分頁輸出?
問題278 如何套用驗證碼類和分頁類完成用戶登錄和分頁輸出?
問題279 如何通過ThinkPHP中的擴展類生成中文驗證碼?
問題280 如何實現傳遞查詢條件的分頁?
問題281 如何套用ThinkPHP中的擴展類上傳檔案?
問題282 ThinkPHP框架中的模板引擎
第16章 PHP項目開發技巧
問題283 如何隱藏PHP檔案擴展名?
問題284 如何在IIS伺服器中實現UrlRewrite(偽靜態)功能?
問題285 如何在Apache伺服器中實現UrlRewrite(偽靜態)功能?
問題286 如何在分頁類中實現UrlRewrite(偽靜態)功能?
問題287 在PHP中如何動態生成靜態頁面?
問題288 如何套用Zend_mail發郵件?
問題289 如何解決使用mail()函式傳送郵件時的標題亂碼問題?
問題290 如何實現帶附屬檔案的郵件傳送?
問題291 如何實現郵件群發?
問題292 自定義線上編輯器的製作
問題293 如何套用CKEditor網頁編輯器?
問題294 如何利用WebBrowser列印報表?
問題295 如何調用Word自動列印指定格式的會議記錄?
問題296 如何將Web頁面中的數據導出到Excel中並自動列印?
問題297 如何將查詢結果保存到Word中?
問題298 如何將查詢結果保存到Excel中?
問題299 如何實現線上支付(工商銀行)?
問題300 如何實現線上支付(支付寶支付)?