-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

跟兄弟連學PHP

( 簡體 字)
作者:兄弟連IT教育類別:1. -> 程式設計 -> 網路編程 -> PHP
譯者:
出版社:電子工業出版社跟兄弟連學PHP 3dWoo書號: 43178
詢問書籍請說出此書號!

有庫存
NT售價: 590

出版日:12/1/2015
頁數:884
光碟數:1 (含視頻教學)
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121278013
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

跟兄弟連學PHP


《跟兄弟連學PHP》即暢銷書《細說PHP(第2版)》的全新升級版,是兄弟連對開源領域的重要貢獻之一,相信本書會延續前兩版的火爆,成為大家學習PHP的好幫手。
我是兄弟連IT教育(itxdl.cn)的創始人李超,兄弟連是我在2006年年底創辦的,到現在已經是第9個年頭了。兄弟連是國內管理最嚴格的IT學校之一,也是國內最大的PHP培訓機構之一。
2001年以前,我沒考上高中,19歲做了一名鐵路工人,對計算機知識一竅不通,敲鍵盤二指禪,不知道硬盤為何物,看片從來都是用光驅,甚至不知道還能復制到硬盤上。2002年,我成為大連交通大學計算機系(成教)的一名普通學員,逐步意識到所學的課程跟企業實踐脫節,也跟很多大學生一樣迷茫過。2003年,趕上了讓全國人民至今心有余悸的“非典”,加上對前途的迷茫,那時的我很痛苦;一個偶然的機會我知道了Linux、PHP等開源軟件,并堅信那是未來的方向。自學一些時日進度很慢,找到一家培訓機構交了很多學費,學習那些我看好的開源軟件課程。培訓期間,機構和講師的表現都不盡如人意,只能自身更加努力,畢業后在大連一家互聯網公司做程序員。
2004年8月,懷揣1000元來到首都北京,只因我有一顆不安分的心……一開始做技術支持,工作努力、吃苦耐勞加上自我學習意識強,很快成了一名IT講師。一路走來陸續從事過講師、講師經理、教學主管、教學總監等職務,真正從業內人士的角度透徹地了解到了培訓行業的秘密。聯想到在大連參加培訓時的一些感觸,我明白為什么很多人都不看好培訓機構,因為這個行業確實有一些機構在追逐商業利益的同時迷失了自我,我發誓要做一家靠譜的培訓機構。
2006年年底,我憑著無知者無畏的勇氣,創辦了“兄弟連”,創業的初衷是為了讓更多的學員知道,培訓機構也是可以真正為學員著想的。經過近4年的摸索,兄弟連在教學上積累了良好的口碑,學員的就業薪資也屢創新高。2010年年底,兄弟連在內部深度調整的同時,在國內首推“零費用學習,畢業后還款”模式,一炮打響,之后的兄弟連進入了發展的快車道。
2011—2013年的兄弟連迅速壯大,其間兄弟連人對教育、對培訓的理解更加深刻,總結出兄弟連的核心競爭力:教學靠譜,變態嚴管,職業素養課貫穿。如今的兄弟連,教學質量好不好學員說了算,定期的講師評估、學員打分,重點考核備課是否充分、激情授課、幽默/勵志教學……教學嚴管和職業素養課讓學員把學習變成習慣,掌握技術的同時學會處事、學會做人。
在鞏固PHP領導地位的同時,兄弟連現已開設Android、iOS、手游、UI、Linux云計算、H5前端等專業,陸續會有更多的新學科推出。2014年3月1日,兄弟連云課堂正式上線,旨在幫助更多的編程愛好者實現自己的IT夢想。現注冊學員已近10萬人,擁有3000集以上視頻。
兄弟連IT目前已經在北京、上海、廣州、鄭州、濟南、沈陽、蘇州、揚州8座城市擁有10處校區,每年有數十萬名學員受益于兄弟連教育的職業培訓、教學視頻、網絡直播課、大學講座。
“兄弟”
一開始的理解是,程序員大都是男性,雄性的天地,寫程序要團隊開發,講求配合協作,更加注重兄弟間的默契。后來發現來兄弟連學習的不全是男性,很多女孩子骨子里的兄弟情結更加濃厚,她們甚至比男人更懂得兄弟的含義。在兄弟連,兄弟的含義就是:是陪你一起學到深夜,餓了分一桶方便面的人;是你游戲玩得高興時,提醒你抓緊時間學習的人;是你學習遇到困難時,傳授你學習方法幫你分析問題的人;是他去找工作,跟人家推薦你也過去試試的人……
“連”
就是連隊,兄弟連需要更加嚴厲的管理,因為我們培養的是IT特種兵,把本來基礎好的學員培養出來那不叫本事,把那些對IT有興趣卻底子薄的人變成編程高手才算能耐!這更加需要團隊,而不僅僅是老師的幫助。在兄弟連,這樣的例子比比皆是。
時至今日,兄弟連已經走過了9個年頭,這條路雖歷盡艱辛,但我們癡心不改。我們就是要讓學員們知道:培訓機構也可以是靠譜的!在兄弟連,你可以找到自我、重拾自信;在兄弟連,你會每天渴求成長,學到深夜;在兄弟連,你會把學習當成一種習慣;在兄弟連,你有更多的兄弟姐妹;在兄弟連,有陪你一起熬夜的老師;在兄弟連,你會被“狠狠”地愛著……

兄弟連創始人 李超
2015年11月




前言
PREFACE


PHP是一種開源免費的開發語言,具有程序開發速度快、運行快、技術本身學習快等快捷性的特點,無疑是當今Web開發中最佳的編程語言。與同類語言JSP和ASP相比,PHP具有簡易性、高安全性和執行靈活等優點,使用PHP開發的Web項目,在軟件方面的投資成本較低、運行穩定。因此現在越來越多的供應商、用戶和企業投資者日益認識到,使用PHP開發的各種商業應用和協作構建各種網絡應用程序,變得更加具有競爭力,更加吸引客戶。無論是從性能、質量還是價格上,PHP都將成為企業和政府信息化所必須考慮的開發語言。
本書包括六大部分+附錄,作為PHP學習的七個階段。從了解Web開發構件開始,包含Web前端技術、數據庫操作,并以PHP為主,到可以完成一個標準化高質量的項目為止。所有內容皆為當今Web項目開發必用的內容,涵蓋了PHP的絕大多數知識點,對于某一方面的介紹再從多角度進行延伸。本書全部技術點以PHP 5.3以上最流行的版本為主,詳細地介紹了PHP及與其相關的Web技術,可以幫助讀者在較短的時間內熟悉并掌握比較實用的PHP技術。其中包括當前比較流行的前端HTML5、PHP的語言語法、面向對象技術、數據庫抽象層PDO和Smarty 3.0模板引擎、學習型PHP框架BroPHP 2.0等主流技術,實用性非常強。本書所涉及的實例全部以特定的應用為基礎,讀者在學習和工作過程中,可以直接應用本書給出的一些獨立模塊和編程思想。
本書編寫的宗旨是讓讀者能擁有一本PHP方面的學習和開發使用的最好書籍,章節雖然不是很多,但對所羅列出的每個知識點都進行了細化和延伸,并力求講解到位,讓讀者可以輕松地讀懂。所介紹的知識點是不需要借助其他任何書籍進行輔助和補充的。而且對于每個知識點都有對應且翔實的可運行的代碼配套,對所有實例代碼都附有詳細注釋、說明及運行效果圖。在大部分章節的最后一節都結合一個實用的案例,把該章中涉及的零散知識點串在一起進行分析總結,步驟詳細,可操作性強。另外,在每個章節的最后還為讀者安排了大量的和本章知識點配套的自測試題(附加在光盤中),能更好地幫助讀者掌握理論知識點,提高實際編程能力,寓學于練。本書最后呈現了一套完整的項目文檔和源碼,對讀者不管是學習還是開發,極具參考和使用價值,讓讀者心領神會,進入到開發的實戰中。
本書是暢銷書《細說PHP(第2版)》的全新升級版。《細說PHP(第2版)》在剛發行僅三個月時,就被國內最大IT門戶的圖書評選中,被評為全年最受讀者歡迎的原創圖書獎。距離《細說PHP(第2版)》發行整三年的時間,在第2版發行后的一年筆者就開始籌劃改版。根據PHP語言的升級和當前Web開發的新特性,以及企業當前的應用,還有讀者的反饋和調研,增加了一些新內容,拋棄了一些過時技術,所有實例都經過了反復的測試,每一句話都進行了反復的推敲。為本版籌劃的幾個重要事件如下:
(1)根據第1版和第2版讀者的反饋,在本次改版中對大部分內容進行了重新整理和優化,更改約1/3的內容。
(2)用一年時間為本書重新錄制了長達8000分鐘的真人出鏡的視頻教程,與本版書完全配套,全面覆蓋了書中的每個知識點。
(3)根據Web發展的需求,為前端部分加入HTML5、CSS3和響應式Web布局等內容。
(4)將PHP所有章節的內容都升級到當前最流行的PHP 5.3以上版本。
(5)專門為本書開發的學習型PHP框架(BroPHP),這是目前國內唯一一個學習型的專用PHP框架。并用半年時間通過了幾百個項目的測試和應用,已經非常成熟和穩定,本書也將其升級為2.0版本。
(6)書中的每個應用實例都做到了最優,可以直接應用在實際項目開發中。
(7)結合多家互聯網公司的項目開發資料,總結出了一份標準的項目開發流程和幾個重要的標準化項目開發文檔,并將上一版書中項目CMS系統改為本書中非常實用的電子商城系統。
超強資源配套學習,跟蹤服務幫助讀者提高
在本書所附的DVD光盤中,附書中所有開發實例的源代碼,讀者在開發中可以直接使用。本書部分章節及課后習題、附錄由于書的容量限制,也附加到了光盤中。光盤中還贈送配套的教學視頻,長達8000分鐘以上(由于光盤空間有限,部分視頻需要讀者到猿代碼上觀看學習:www.ydma.cn)。通過參考本書再結合視頻教學光盤,可以加快讀者對知識點的掌握,加快學習進度。
為了幫助讀者學習到更多的PHP技術,在兄弟連論壇(bbs.itxdl.cn)還可以下載常用的技術手冊、安裝LAMP環境所需要的開源軟件和本書每章后面為讀者安排的大量自測題配套答案。筆者及“兄弟連IT教育”的多名講師和技術人員也會及時回答讀者提問,與讀者進行在線技術交流,并為讀者提供各類技術文章,幫助讀者提高開發水平,解決讀者在開發中遇到的疑難問題。
本書適合讀者
? 接受PHP培訓的學員。
? Web開發愛好者。
? 網站維護及管理人員。
? 初級或專業的網站開發人員。
? 大中專院校的教師及培訓中心的講師。
? 進行畢業設計和對PHP感興趣的學生。
? 從事ASP或JSP而想轉向PHP開發的程序員。
本書由高洛峰主筆編著,參加編寫及審校工作的人員有李明、胡泊、張學金、郇濤、戴雯慧、潘紅、余飛、魯書喜、青梅、滕吉鵬、陳永慶、孫豐偉、黃煜棟、魯大林、孫歡、王石光、張春英、王偉斌、陳俠義、鄒賢芳、姚鴻坤,在此一并表示感謝。

2015年11月
內容簡介:

本書是暢銷書《細說PHP(第2版)》升級版。PHP是當前開發Web應用系統最理想的工具,它易于使用、功能強大、成本低廉、高安全性、開發速度快且執行靈活,應用非常廣泛。全書以實用為設計目標,包含PHP開發最主流的各項技術,對每一個知識點都進行了深入詳細的講解,并附有大量的實例代碼,圖文并茂,系統地介紹了PHP的相關技術及其在實際Web開發中的應用。 本書是《細說PHP》第三版,全書共6個部分,分為32個章節,每章都是PHP獨立知識點的總結。內容涵蓋了動態網站開發的前端技術(HTML5)、企業現在主流應用版本PHP 5.4為主的語法、PHP的常用功能模塊和實用技巧、MySQL數據庫的設計與應用、PHP 面向對象的程序設計思想、數據庫抽象層PDO、Smarty模板技術、Web開發的設計模式、自定義PHP技術框架最新版BroPHP 2.0、重新開發包括完整流程的極具參考價值的Web項目(BroShop)等內容。每章都有大量的實用示例及詳盡的注釋,以加速讀者的理解和學習,同時為每章的技術點設置了大量的自測試題。最重要的是本書全部內容都有精心錄制的配套教學視頻覆蓋,視頻中真人出鏡、師生互動、講解生動、操作性強,并且多數技術概念以微電影形式穿插在視頻中進行講解說明。 對于PHP應用開發的新手而言,本書不失為一本好的入門教材,內容既實用又全面,所有實例都可以在開發中直接應用,并輔以大量的視頻教程,使讀者輕松掌握所學知識。另外,本書也適合有一定基礎的網絡開發人員和網絡愛好者,以及大中專院校的師生閱讀與參考。不僅可以作為PHP開發的學習用書,還可以作為從事Web開發的程序員的參考用書和必備手冊。對于行家來說,本書也是一本難得的參考手冊,讀者必將從中獲益。

目錄:

第1部分 Web開發入門篇
第1章 LAMP網站構建 2
1.1 介紹Web給你認識 2
1.1.1 Web應用的優勢 3
1.1.2 Web 2.0時代的互聯網 4
1.1.3 Web開發標準 6
1.1.4 認識腳本語言 7
1.2 動態網站開發所需的Web構件 7
1.2.1 客戶端瀏覽器 8
1.2.2 超文本標記語言(HTML) 9
1.2.3 層疊樣式表(CSS) 10
1.2.4 客戶端腳本編程語言JavaScript 11
1.2.5 Web服務器 11
1.2.6 服務器端編程語言 12
1.2.7 數據庫管理系統 13
1.3 幾種主流的Web應用程序平臺 14
1.3.1 Web應用程序開發平臺對比分析 14
1.3.2 動態網站開發平臺技術比較 15
1.4 HTTP協議與Web的關系 16
1.4.1 HTTP協議概述 16
1.4.2 HTTP協議結構 18
1.4.3 HTTP請求消息 18
1.4.4 HTTP響應消息 19
1.4.5 URL概述 20
1.5 Web的工作原理 20
1.5.1 情景1:服務器不帶應用程序服務器
和數據庫 21
1.5.2 情景2:帶應用程序服務器的Web
服務器 22
1.5.3 情景3:瀏覽器訪問服務器端的數據庫 23
1.6 LAMP網站開發組合概述 23
1.6.1 Linux操作系統 23
1.6.2 Web服務器Apache 24
1.6.3 MySQL數據庫管理系統 24
1.6.4 PHP后臺腳本編程語言 25
1.6.5 LAMP的發展趨勢 27
1.6.6 Web的未來發展 28
1.7 如何學習PHP 28
1.7.1 確定學習的目標 29
1.7.2 PHP學習線路圖 29
1.7.3 堅持動手實驗 31
1.7.4 要事為先的原則 31
1.7.5 Bug解決之道 32
1.7.6 看教學視頻,讓學習變得簡單 33
1.7.7 優秀的Web程序員是怎樣練成的 33
1.8 小結 35
本章必須掌握的知識點 35
本章需要了解的內容 35
第2章 HTML的設計與應用 36
2.1 網頁制作概述 36
2.1.1 HTML基礎 36
2.1.2 簡單HTML實例制作 37
2.2 HTML語言的語法 38
2.2.1 HTML標簽和元素 38
2.2.2 HTML語法不區分字母大小寫 38
2.2.3 HTML標簽屬性 39
2.2.4 HTML顏色值的設置 39
2.2.5 HTML文檔注釋 39
2.2.6 HTML代碼格式 39
2.2.7 HTML字符實體 40
2.3 HTML文件的主體結構 40
2.4 HTML文檔頭部元素<head> 41
2.4.1 <title>元素 41
2.4.2 <base>元素 41
2.4.3 <link>元素 42
2.4.4 <meta>元素 42
2.5 HTML文檔主體標記 43
2.6 文字版面的編輯 43
2.6.1 格式標簽 44
2.6.2 文本標簽 45
2.7 創建圖像和鏈接 47
2.7.1 插入圖片 47
2.7.2 建立錨點和超鏈接 48
2.8 使用HTML表格 48
2.9 HTML框架結構 51
2.10 HTML表單設計 53
2.11 小結 57
本章必須掌握的知識點 57
本章需要了解的內容 58
本章需要拓展的內容 58
本章的學習建議 58
第3章 層疊樣式表 59
3.1 CSS簡介 59
3.2 CSS規則的組成 60
3.2.1 CSS注釋 61
3.2.2 長度單位 62
3.2.3 顏色單位和URL值 62
3.3 在HTML文檔中放置CSS的幾種方式 63
3.3.1 內聯樣式表 63
3.3.2 嵌入一張樣式表 63
3.3.3 鏈接到一張外部的樣式表 63
3.4 CSS選擇器 64
3.4.1 HTML選擇器 64
3.4.2 類選擇器 64
3.4.3 ID選擇器 65
3.4.4 關聯選擇器 65
3.4.5 組合選擇器 65
3.4.6 偽元素選擇器 66
3.5 CSS常見的樣式屬性和值 66
3.5.1 字體屬性 66
3.5.2 顏色屬性 67
3.5.3 背景屬性 67
3.5.4 文本屬性 68
3.5.5 邊框屬性 68
3.5.6 鼠標光標屬性 70
3.5.7 列表屬性 70
3.5.8 綜合實例 71
3.6 小結 73
本章必須掌握的知識點 73
本章需要了解的內容 73
本章需要拓展的內容 73
本章的學習建議 74
第4章 DIV+CSS網頁標準化布局 75
4.1 DIV+CSS對頁面布局的優勢 75
4.2 “無意義”的HTML元素div和span 76
4.3 W3C盒子模型 76
4.4 和頁面布局有關的CSS屬性 78
4.5 盒子區塊框的定位 79
4.5.1 相對定位 80
4.5.2 絕對定位 80
4.6 使用盒子模型的浮動布局 81
4.6.1 設置浮動 81
4.6.2 行框和清理 82
4.7 DIV+CSS的兼容性問題 84
4.7.1 不同瀏覽器解釋盒子模型的差異 85
4.7.2 設置瀏覽器去遵循W3C標準 86
4.8 使用盒子模型設計頁面布局 87
4.8.1 居中設計 87
4.8.2 設置兩列浮動的布局 88
4.8.3 設置三列浮動的布局 89
4.8.4 設置多列浮動的布局 90
4.9 DIV+CSS網站首頁布局示例 91
4.9.1 HTML文件的設計 91
4.9.2 CSS文件設計 93
4.10 小結 95
本章必須掌握的知識點 95
本章需要了解的內容 95
本章需要拓展的內容 95
本章的學習建議 95
第5章 HTML5與CSS3的應用 96
5.1 現在是用HTML5的時候 96
5.2 HTML5語法的改變 97
5.2.1 HTML5中的標記方法 97
5.2.2 HTML5做到了與之前版本的兼容 98
5.2.3 HTML5語法改變的簡單示例 99
5.3 HTML5新增和廢除的元素 99
5.3.1 新增的結構元素 99
5.3.2 HTML5表單增加的新特性 101
5.3.3 新增多媒體播放元素 104
5.3.4 新增的其他元素 105
5.3.5 廢除的元素 106
5.4 HTML5新增和廢除的屬性 106
5.5 HTML5的高級功能介紹 108
5.6 CSS3概述 109
5.6.1 CSS3在選擇器上的支持 109
5.6.2 CSS3在樣式上的支持 109
5.6.3 CSS3對于動畫的支持 109
5.6.4 在實際開發中該如何使用CSS3 110
5.7 CSS3中的樣式選擇器 110
5.7.1 基本選擇器 110
5.7.2 多元素的組合選擇器 111
5.7.3 屬性選擇器 111
5.7.4 結構性偽類選擇器 112
5.8 CSS3的樣式屬性 113
5.8.1 使用CSS3屬性前的準備 114
5.8.2 邊框屬性 114
5.8.3 背景屬性 115
5.8.4 文本屬性 116
5.8.5 用戶界面屬性 117
5.8.6 動畫屬性 117
5.8.7 多列布局屬性 118
5.8.8 漸變屬性 118
5.8.9 透明屬性 119
5.8.10 旋轉屬性 119
5.8.11 服務器端字體屬性 119
5.9 使用HTML5中的新增元素來構建
網頁 120
5.10 LESS CSS框架簡介 124
5.11 響應式布局 125
5.11.1 響應式布局的優缺點 125
5.11.2 響應式布局該怎么設計 126
5.11.3 響應式布局實例 126
5.11.4 Media Queries的使用方法 128
5.11.5 在移動設備上設置原始大小顯示 132
5.11.6 響應式網站的內容設計 132
5.11.7 響應式網站的設計流程 134
5.12 Web前端CSS框架Bootstrap介紹 134
5.12.1 Bootstrap的主要功能 135
5.12.2 Bootstrap的頁面布局和排版 135
5.12.3 頁面下拉菜單 135
5.12.4 Bootstrap的優點和不足 136
5.13 小結 137
本章必須掌握的知識點 137
本章需要了解的內容 137
本章需要拓展的內容 137
本章的學習建議 137
第2部分 PHP基礎篇
第6章 從搭建你的PHP開發環境開始 139
6.1 幾種常見的PHP環境安裝方式 139
6.1.1 Linux系統下源代碼包方式安裝
環境 139
6.1.2 在Windows系統上安裝Web
工作環境 140
6.1.3 搭建學習型的PHP工作環境 140
6.2 環境安裝對操作系統的選擇 140
6.2.1 選擇網站運營的操作系統 141
6.2.2 選擇網站開發的操作系統 141
6.3 安裝集成PHP開發環境 141
6.3.1 安裝前準備 142
6.3.2 安裝步驟 142
6.3.3 環境測試 143
6.4 改變文檔根目錄www的位置 145
6.5 phpMyAdmin的配置與應用 146
6.5.1 HTTP身份驗證模式 146
6.5.2 Cookie身份驗證模式 147
6.5.3 config身份驗證模式 147
6.5.4 修改MySQL默認的訪問權限 148
6.6 小結 149
本章必須掌握的知識點 149
本章需要了解的內容 149
本章需要拓展的內容 149
第7章 PHP的基本語法 150
7.1 PHP在Web開發中的應用 150
7.1.1 就從認識PHP開始吧 150
7.1.2 PHP都能做什么 151
7.2 第一個PHP腳本程序 153
7.3 PHP語言標記 156
7.3.1 將PHP代碼嵌入HTML中的位置 157
7.3.2 解讀開始和結束標記 157
7.4 指令分隔符“分號” 158
7.5 程序注釋 159
7.6 在程序中使用空白的處理 160
7.7 變量 161
7.7.1 變量的聲明 161
7.7.2 變量的命名 162
7.7.3 可變變量 164
7.7.4 變量的引用賦值 164
7.8 變量的類型 165
7.8.1 類型介紹 165
7.8.2 布爾型(boolean) 166
7.8.3 整型(integer) 167
7.8.4 浮點型(float或double) 167
7.8.5 字符串(string) 168
7.8.6 數組(array) 170
7.8.7 對象(object) 171
7.8.8 資源類型(resource) 171
7.8.9 NULL類型 172
7.8.10 偽類型介紹 172
7.9 數據類型之間相互轉換 173
7.9.1 自動類型轉換 173
7.9.2 強制類型轉換 174
7.9.3 類型轉換細節 174
7.9.4 變量類型的測試函數 175
7.10 常量 176
7.10.1 常量的定義和使用 176
7.10.2 常量和變量 177
7.10.3 系統中的預定義常量 177
7.10.4 PHP中的魔術常量 177
7.11 PHP中的運算符 178
7.11.1 算術運算符 179
7.11.2 字符串運算符 181
7.11.3 賦值運算符 181
7.11.4 比較運算符 182
7.11.5 邏輯運算符 183
7.11.6 位運算符 184
7.11.7 其他運算符 187
7.11.8 運算符的優先級 188
7.12 表達式 189
7.13 小結 190
本章必須掌握的知識點 190
本章需要了解的內容 190
本章需要拓展的內容 190
第8章 PHP的流程控制結構 191
8.1 分支結構 191
8.1.1 單一條件分支結構(if) 192
8.1.2 雙向條件分支結構(else子句) 193
8.1.3 多向條件分支結構(elseif子句) 193
8.1.4 多向條件分支結構(switch語句) 195
8.1.5 巢狀條件分支結構 197
8.1.6 條件分支結構實例應用(簡單計算器) 197
8.2 循環結構 199
8.2.1 while語句 200
8.2.2 do…while循環 202
8.2.3 for語句 203
8.3 特殊的流程控制語句 205
8.3.1 break語句 205
8.3.2 continue語句 206
8.3.3 exit語句 207
8.4 PHP的新版特性——goto語句 207
8.5 小結 209
本章必須掌握的知識點 209
本章需要了解的內容 209
第9章 PHP的函數應用 210
9.1 函數的定義 210
9.2 自定義函數 211
9.2.1 函數的聲明 211
9.2.2 函數的調用 213
9.2.3 函數的參數 214
9.2.4 函數的返回值 215
9.3 函數的工作原理和結構化編程 216
9.4 PHP變量的范圍 217
9.4.1 局部變量 217
9.4.2 全局變量 218
9.4.3 靜態變量 220
9.5 聲明及應用各種形式的PHP函數 220
9.5.1 常規參數的函數 221
9.5.2 偽類型參數的函數 222
9.5.3 引用參數的函數 222
9.5.4 默認參數的函數 223
9.5.5 可變個數參數的函數 225
9.5.6 回調函數 226
9.6 遞歸函數 230
9.7 使用自定義函數庫 231
9.8 PHP匿名函數和閉包 232
9.9 小結 233
本章必須掌握的知識點 233
本章需要了解的內容 233
本章需要拓展的內容 233
第10章 PHP中的數組與數據結構 234
10.1 數組的分類 234
10.2 數組的定義 236
10.2.1 直接賦值的方式聲明數組 236
10.2.2 使用array()語言結構新建數組 238
10.2.3 多維數組的聲明 238
10.3 數組的遍歷 240
10.3.1 使用for語句循環遍歷數組 241
10.3.2 使用foreach語句遍歷數組 242
10.3.3 聯合使用list( )、each( )和while
循環遍歷數組 245
10.3.4 使用數組的內部指針控制函數遍
歷數組 247
10.4 預定義數組 248
10.4.1 服務器變量:$_SERVER 249
10.4.2 環境變量:$_ENV 250
10.4.3 URL GET變量:$_GET 250
10.4.4 HTTP POST變量:$_POST 251
10.4.5 request變量:$_REQUEST 252
10.4.6 HTTP文件上傳變量:$_FILES 252
10.4.7 HTTP Cookies:$_COOKIE 252
10.4.8 Session變量:$_SESSION 252
10.4.9 Global變量:$GLOBALS 253
10.5 數組的相關處理函數 253
10.5.1 數組的鍵/值操作函數 253
10.5.2 統計數組元素的個數和唯一性 256
10.5.3 使用回調函數處理數組的函數 257
10.5.4 數組的排序函數 261
10.5.5 拆分、合并、分解和接合數組 265
10.5.6 數組與數據結構 267
10.5.7 其他有用的數組處理函數 269
10.6 操作PHP數組需要注意的一些細節 271
10.6.1 數組運算符號 271
10.6.2 刪除數組中的元素操作 272
10.6.3 關于數組下標的注意事項 272
10.7 小結 273
本章必須掌握的知識點 273
本章需要了解的內容 273
本章需要拓展的內容 273
第11章 PHP面向對象的程序設計 274
11.1 面向對象的介紹 274
11.1.1 類和對象之間的關系 275
11.1.2 面向對象的程序設計 275
11.2 如何抽象一個類 276
11.2.1 類的聲明 276
11.2.2 成員屬性 277
11.2.3 成員方法 278
11.3 通過類實例化對象 279
11.3.1 實例化對象 280
11.3.2 對象類型在內存中的分配 281
11.3.3 對象中成員的訪問 282
11.3.4 特殊的對象引用“$this” 284
11.3.5 構造方法與析構方法 286
11.4 封裝性 288
11.4.1 設置私有成員 289
11.4.2 私有成員的訪問 290
11.4.3 __set()、__get()、__isset()和__unset()
4個方法 292
11.5 繼承性 297
11.5.1 類繼承的應用 297
11.5.2 訪問類型控制 299
11.5.3 子類中重載父類的方法 301
11.6 常見的關鍵字和魔術方法 303
11.6.1 final關鍵字的應用 303
11.6.2 static關鍵字的使用 304
11.6.3 單態設計模式 305
11.6.4 const關鍵字 307
11.6.5 instanceof關鍵字 307
11.6.6 克隆對象 307
11.6.7 類中通用的方法__toString() 309
11.6.8 __call()方法的應用 309
11.6.9 自動加載類 311
11.6.10 對象串行化 312
11.7 抽象類與接口 315
11.7.1 抽象類 315
11.7.2 接口技術 316
11.8 多態性的應用 318
11.9 PHP 5.4的Trait特性 320
11.9.1 Trait的聲明 320
11.9.2 Trait的基本使用 320
11.10 PHP 5.3版本以后新增加的命名空間 323
11.10.1 命名空間的基本應用 323
11.10.2 命名空間的子空間和公共空間 325
11.10.3 命名空間中的名稱和術語 326
11.10.4 別名和導入 326
11.11 面向對象版圖形計算器 328
11.11.1 需求分析 328
11.11.2 功能設計及實現 329
11.11.3 類的組織架構 334
11.12 小結 335
本章必須掌握的知識點 335
本章需要了解的內容 336
本章需要拓展的內容 336
第12章 字符串處理 337
12.1 字符串的處理介紹 337
12.1.1 字符串的處理方式 337
12.1.2 字符串類型的特點 338
12.1.3 雙引號中的變量解析總結 338
12.2 常用的字符串輸出函數 339
12.3 常用的字符串格式化函數 342
12.3.1 去除空格和字符串填補函數 342
12.3.2 字符串大小寫的轉換 343
12.3.3 和HTML標簽相關的字符串
格式化 344
12.3.4 其他字符串格式化函數 348
12.4 字符串比較函數 349
12.4.1 按字節順序進行字符串比較 349
12.4.2 按自然排序進行字符串比較 350
12.5 小結 351
本章必須掌握的知識點 351
本章需要拓展的內容 351
第13章 正則表達式 352
13.1 正則表達式簡介 352
13.2 正則表達式的語法規則 353
13.2.1 定界符 354
13.2.2 原子 354
13.2.3 元字符 356
13.2.4 模式修正符 359
13.3 與Perl兼容的正則表達式函數 360
13.3.1 字符串的匹配與查找 360
13.3.2 字符串的替換 363
13.3.3 字符串的分割和連接 368
13.4 文章發布操作示例 370
13.5 小結 375
本章必須掌握的知識點 375
本章需要了解的內容 375
本章需要拓展的內容 375
第3部分 PHP常用功能模塊篇
第14章 PHP的錯誤和異常處理 377
14.1 錯誤處理 377
14.1.1 錯誤報告級別 378
14.1.2 調整錯誤報告級別 378
14.1.3 使用trigger_error()函數代替die()
函數 380
14.1.4 自定義錯誤處理 380
14.1.5 寫錯誤日志 382
14.2 異常處理 384
14.2.1 異常處理實現 385
14.2.2 擴展PHP內置的異常處理類 385
14.2.3 捕獲多個異常 387
14.3 小結 389
本章必須掌握的知識點 389
本章需要了解的內容 389
第15章 PHP的日期和時間 390
15.1 UNIX時間戳 390
15.1.1 將日期和時間轉變成UNIX
時間戳 390
15.1.2 日期的計算 392
15.2 在PHP中獲取日期和時間 392
15.2.1 調用getdate()函數取得日期/時間
信息 392
15.2.2 日期和時間格式化輸出 393
15.3 修改PHP的默認時區 394
15.4 使用微秒計算PHP腳本執行時間 395
15.5 日歷類 396
15.6 小結 400
本章必須掌握的知識點 400
本章需要了解的內容 400
本章需要拓展的內容 400
本章的學習建議 400

第16章 文件系統處理 401
16.1 文件系統概述 401
16.1.1 文件類型 401
16.1.2 文件的屬性 402
16.2 目錄的基本操作 405
16.2.1 解析目錄路徑 405
16.2.2 遍歷目錄 406
16.2.3 統計目錄大小 408
16.2.4 建立和刪除目錄 409
16.2.5 復制目錄 409
16.3 文件的基本操作 410
16.3.1 文件的打開與關閉 410
16.3.2 寫入文件 412
16.3.3 讀取文件內容 413
16.3.4 訪問遠程文件 415
16.3.5 移動文件指針 416
16.3.6 文件的鎖定機制 417
16.3.7 文件的一些基本操作函數 420
16.4 文件的上傳與下載 421
16.4.1 文件上傳 421
16.4.2 處理多個文件上傳 424
16.4.3 文件下載 425
16.5 設計經典的文件上傳類 426
16.5.1 需求分析 426
16.5.2 程序設計 427
16.5.3 文件上傳類代碼實現 427
16.5.4 文件上傳類的應用過程 432
16.6 小結 433
本章必須掌握的知識點 433
本章需要了解的內容 434
本章需要拓展的內容 434
本章的學習建議 434
第17章 PHP動態圖像處理 435
17.1 PHP中GD庫的使用 435
17.1.1 畫布管理 436
17.1.2 設置顏色 437
17.1.3 生成圖像 438
17.1.4 繪制圖像 438
17.1.5 在圖像中繪制文字 440
17.2 設計經典的驗證碼類 443
17.2.1 設計驗證碼類 443
17.2.2 應用驗證碼類的實例對象 446
17.2.3 表單中應用驗證碼 446
17.2.4 實例演示 447
17.3 PHP圖片處理 447
17.3.1 圖片背景管理 447
17.3.2 圖片縮放 449
17.3.3 圖片裁剪 450
17.3.4 添加圖片水印 451
17.3.5 圖片旋轉和翻轉 453
17.4 設計經典的圖像處理類 455
17.4.1 需求分析 455
17.4.2 程序設計 456
17.4.3 圖像處理類代碼實現 456
17.4.4 圖像處理類的應用過程 461
17.5 小結 463
本章必須掌握的知識點 463
本章需要了解的內容 463
本章需要拓展的內容 463
第4部分 數據庫開發篇
第18章 MySQL數據庫概述 465
18.1 數據庫的應用 465
18.1.1 數據庫在Web開發中的重要地位 466
18.1.2 為什么PHP會選擇MySQL作為
自己的黃金搭檔 466
18.1.3 PHP和MySQL的合作方式 466
18.1.4 結構化查詢語言SQL 467
18.2 MySQL數據庫的常見操作 468
18.2.1 MySQL數據庫的連接與關閉 468
18.2.2 創建新用戶并授權 469
18.2.3 創建數據庫 469
18.2.4 創建數據表 470
18.2.5 數據表內容的簡單管理 471
18.3 小結 472
本章必須掌握的知識點 472
第19章 MySQL數據表的設計 473
19.1 數據表(Table) 473
19.2 數據值和列類型 474
19.2.1 數值類的數據列類型 474
19.2.2 字符串類的數據列類型 475
19.2.3 日期和時間類的數據列類型 476
19.2.4 NULL值 477
19.2.5 類型轉換 477
19.3 數據字段屬性 477
19.4 數據表對象管理 478
19.4.1 創建表(CREATE TABLE) 478
19.4.2 修改表(ALTER TABLE) 479
19.4.3 刪除表(DROP TABLE) 480
19.5 數據表的類型及存儲位置 481
19.5.1 MyISAM數據表 481
19.5.2 InnoDB數據表 481
19.5.3 如何選擇InnoDB還是MyISAM
表類型 481
19.5.4 數據表的存儲位置 482
19.6 數據表的默認字符集 482
19.6.1 字符集 483
19.6.2 字符集支持原理 483
19.6.3 創建數據對象時修改字符集 484
19.7 創建索引 484
19.7.1 主鍵索引(PRIMARY KEY) 484
19.7.2 唯一索引(UNIQUE) 485
19.7.3 常規索引(INDEX) 486
19.7.4 全文索引(FULLTEXT) 486
19.8 規范化 487
19.8.1 起點 487
19.8.2 第一范式 488
19.8.3 第二范式 489
19.8.4 第三范式 490
19.8.5 規范化理論 491
19.9 數據庫的設計技巧 492
19.9.1 數據庫的設計要求 492
19.9.2 命名的技巧 492
19.9.3 數據庫具體設計工作中的技巧 493
19.10 小結 493
本章必須掌握的知識點 493
本章需要了解的內容 493
本章需要拓展的內容 493
第20章 SQL語句設計 494
20.1 操作數據表中的數據記錄(DML) 494
20.1.1 使用INSERT語句向數據表中添加
數據 494
20.1.2 使用UPDATE語句更新數據表中已
存在的數據 495
20.1.3 使用DELETE語句刪除數據表中不
需要的數據記錄 496
20.2 通過DQL命令查詢數據表中的數據 497
20.2.1 選擇特定的字段 497
20.2.2 使用AS子句為字段取別名 498
20.2.3 DISTINCT關鍵字的使用 498
20.2.4 在SELECT語句中使用表達式的列 499
20.2.5 使用WHERE子句按條件檢索 499
20.2.6 根據空值(NULL)確定檢索條件 501
20.2.7 使用BETWEEN AND進行范圍
比較查詢 501
20.2.8 使用IN進行范圍比對查詢 501
20.2.9 使用LIKE進行模糊查詢 501
20.2.10 多表查詢(連接查詢) 502
20.2.11 嵌套查詢(子查詢) 504
20.2.12 使用ORDER BY對查詢結果排序 505
20.2.13 使用LIMIT限定結果行數 505
20.2.14 使用統計函數 506
20.2.15 使用GROUP BY對查詢結果
分組 507
20.3 查詢優化 508
20.4 小結 509
本章必須掌握的知識點 509
本章需要拓展的內容 509
本章的學習建議 509
第21章 PHP訪問MySQL的擴展函數 510
21.1 PHP訪問MySQL數據庫服務器
的流程 510
21.2 在PHP腳本中連接MySQL服務器 512
21.2.1 在PHP程序中選擇已創建的數據庫 513
21.2.2 執行SQL命令 513
21.2.3 在PHP腳本中處理SELECT查詢
結果集 515
21.3 設計完美分頁類 517
21.3.1 需求分析 517
21.3.2 程序設計 517
21.3.3 完美分頁類的代碼實現 518
21.3.4 分頁類的應用過程 522
21.4 管理books表實例 525
21.4.1 需求分析 525
21.4.2 程序設計 526
21.5 PHP的mysqli擴展介紹 533
21.5.1 啟用mysqli擴展模塊 533
21.5.2 mysqli擴展接口的應用概述 534
21.6 小結 535
本章必須掌握的知識點 535
本章需要了解的內容 535
本章需要拓展的內容 535
本章的學習建議 535
第22章 數據庫抽象層PDO 536
22.1 PDO所支持的數據庫 536
22.2 PDO的安裝 537
22.3 創建PDO對象 538
22.3.1 以多種方式調用構造方法 539
22.3.2 PDO對象中的成員方法 541
22.4 使用PDO對象 542
22.4.1 調整PDO的行為屬性 542
22.4.2 PDO處理PHP程序和數據庫之間的
數據類型轉換 542
22.4.3 PDO的錯誤處理模式 543
22.4.4 使用PDO執行SQL語句 544
22.5 PDO對預處理語句的支持 546
22.5.1 了解PDOStatement對象 546
22.5.2 準備語句 547
22.5.3 綁定參數 548
22.5.4 執行準備好的查詢 549
22.5.5 獲取數據 550
22.5.6 大數據對象的存取 554
22.6 PDO的事務處理 554
22.6.1 MySQL的事務處理 555
22.6.2 構建事務處理的應用程序 555
22.7 小結 557
本章必須掌握的知識點 557
本章需要了解的內容 557
本章需要拓展的內容 557
第5部分 PHP開發高級篇
第23章 MemCache管理與應用 559
23.1 MemCache概述 559
23.1.1 初識MemCache 559
23.1.2 MemCache在Web中的應用 560
23.2 memcached的安裝及管理 562
23.2.1 Linux下安裝MemCache軟件 562
23.2.2 Windows下安裝MemCache軟件 562
23.2.3 memcached服務器的管理 563
23.3 使用Telnet作為memcached的客戶端
管理 564
23.3.1 連接memcached服務器 564
23.3.2 基本的memcached客戶端命令 564
23.3.3 查看當前memcached服務器的運行
狀態信息 565
23.3.4 數據管理指令 565
23.4 PHP的memcached管理接口 566
23.4.1 安裝PHP中的MemCache應用程序
擴展接口 567
23.4.2 MemCache應用程序擴展接口 568
23.4.3 MemCache的實例應用 573
23.5 memcached服務器的安全防護 574
23.6 小結 574
本章必須掌握的知識點 574
本章需要了解的內容 575
本章需要拓展的內容 575
第24章 會話控制 576
24.1 為什么要使用會話控制 576
24.2 會話跟蹤的方式 577
24.3 Cookie的應用 577
24.3.1 Cookie概述 578
24.3.2 向客戶端計算機中設置Cookie 578
24.3.3 在PHP腳本中讀取Cookie的資料
內容 580
24.3.4 數組形態的Cookie應用 580
24.3.5 刪除Cookie 581
24.3.6 基于Cookie的用戶登錄模塊 581
24.4 Session的應用 583
24.4.1 Session概述 583
24.4.2 配置Session 584
24.4.3 Session的聲明與使用 585
24.4.4 注冊一個會話變量和讀取Session 585
24.4.5 注銷變量與銷毀Session 586
24.4.6 Session的自動回收機制 587
24.4.7 傳遞Session ID 588
24.5 一個簡單的郵件系統實例 591
24.5.1 為郵件系統準備數據 591
24.5.2 編碼實現郵件系統 592
24.5.3 郵件系統執行說明 594
24.6 自定義Session處理方式 595
24.6.1 自定義Session的存儲機制 595
24.6.2 使用數據庫處理Session信息 598
24.6.3 使用memcached處理Session信息 601
24.7 小結 604
本章必須掌握的知識點 604
本章需要了解的內容 604
本章需要拓展的內容 604
第25章 PHP的CURL功能擴展模塊 605
25.1 CURL功能模塊介紹 605
25.2 PHP的CURL功能擴展模塊基本
用法 606
25.3 CURL相關的功能選項 607
25.4 通過CURL擴展獲取頁面信息 609
25.5 通過CURL擴展用POST方法發送
數據 610
25.6 通過CURL擴展進行文件上傳 612
25.7 通過CURL模擬登錄并獲取數據 614
25.8 小結 615
本章必須掌握的知識點 615
本章需要拓展的內容 616
第26章 PHP的模板引擎Smarty 617
26.1 什么是模板引擎 617
26.2 自定義模板引擎 619
26.2.1 自定義模板引擎類 619
26.2.2 使用自己的模板引擎 621
26.2.3 應用自定義模板引擎的示例分析 623
26.3 選擇Smarty模板引擎 626
26.4 安裝Smarty及初始化配置 627
26.4.1 安裝Smarty 628
26.4.2 初始化Smarty類庫的默認設置 628
26.4.3 第一個Smarty的簡單示例 631
26.5 Smarty的基本應用 633
26.5.1 PHP程序員常用的和Smarty相關
的操作 634
26.5.2 模板設計時美工的常用操作 635
26.6 Smarty模板設計的基本語法 636
26.6.1 模板中的注釋 636
26.6.2 模板中的變量應用 636
26.6.3 模板中的函數應用 639
26.6.4 忽略Smarty解析 641
26.7 Smarty模板中的變量應用 641
26.7.1 從配置文件中讀取變量 642
26.7.2 在模板中使用保留變量 645
26.8 Smarty模板中的變量調解器 647
26.8.1 變量調解器函數的使用方式 647
26.8.2 Smarty默認提供的變量調解器 648
26.8.3 自定義變量調解器插件 650
26.9 Smarty模板中的自定義函數 652
26.9.1 為Smarty模板擴充函數插件 652
26.9.2 為Smarty模板擴充塊函數插件 654
26.10 Smarty模板中的內置函數 654
26.10.1 變量聲明 655
26.10.2 流程控制 656
26.10.3 聲明和調用模板函數 659
26.10.4 數組遍歷 660
26.10.5 Smarty提供的其他內置函數 665
26.11 Smarty的模板繼承特性 666
26.11.1 使用{extends}函數實現模板繼承 666
26.11.2 在子模板中覆蓋父模板中的部分
內容區域 667
26.11.3 合并子模板和父模板的{block}
標簽內容 668
26.12 Smarty的緩存控制 669
26.12.1 在Smarty中控制緩存 670
26.12.2 每個模板多個緩存 671
26.12.3 為緩存實例消除處理開銷 671
26.12.4 清除緩存 672
26.12.5 關閉局部緩存 673
26.13 小結 673
本章必須掌握的知識點 673
本章需要了解的內容 673
本章需要拓展的內容 673
第27章 MVC模式與PHP框架 674
27.1 MVC模式在Web中的應用 674
27.1.1 MVC模式的工作原理 674
27.1.2 MVC模式的優缺點 676
27.2 PHP開發框架 676
27.2.1 什么是框架 677
27.2.2 為什么要用框架 677
27.2.3 框架和MVC設計模式的關系 678
27.2.4 比較流行的PHP框架 679
27.3 劃分模塊和操作 680
27.3.1 為項目劃分模塊 680
27.3.2 為模塊設置操作 681
27.4 小結 681
第28章 超輕量級PHP框架BroPHP 2.0 682
28.1 BroPHP框架概述 682
28.1.1 系統特點 683
28.1.2 環境要求 683
28.1.3 BroPHP框架源碼的目錄結構 684
28.2 單一入口 684
基于BroPHP框架的單一入口編寫規則 684
28.3 部署項目應用目錄 685
28.3.1 項目推薦的部署方式 686
28.3.2 URL訪問 687
28.4 BroPHP框架的基本設置 689
28.4.1 默認開啟 689
28.4.2 配置文件 690
28.4.3 內置函數 691
28.5 聲明控制器(Control) 692
28.5.1 控制器的聲明(模塊) 692
28.5.2 操作的聲明 693
28.5.3 頁面跳轉 694
28.5.4 重定向 695
28.6 設計視圖(View) 696
28.6.1 視圖與控制器之間的交互 696
28.6.2 切換模板風格 697
28.6.3 模板文件的聲明規則 697
28.6.4 display()的新用法 698
28.6.5 模板中的幾個常用變量應用 698
28.6.6 在PHP程序中定義資源位置 699
28.7 應用模型(Model) 699
28.7.1 BroPHP數據庫操作接口的特性 700
28.7.2 切換數據庫驅動 700
28.7.3 聲明和實例化Model 701
28.7.4 數據庫的統一操作接口 704
28.8 自動驗證 721
28.9 緩存設置 724
28.9.1 基于memcached緩存設置 724
28.9.2 基于Smarty的緩存機制 724
28.10 調試模式 725
28.11 內置擴展類庫 726
28.11.1 分頁類Page 726
28.11.2 驗證碼類Vcode 728
28.11.3 圖像處理類Image 729
28.11.4 文件上傳類FileUpload 730
28.11.5 BroPHP 2.0新增加的文件緩存類
FileCache 731
28.11.6 BroPHP 2.0新增加的無限分類處理
類CatTree 733
28.12 自定義功能擴展 736
28.12.1 自定義擴展類庫 736
28.12.2 自定義擴展函數庫 736
28.13 BroPHP 2.0數據庫分離部署方案 737
28.13.1 數據分離方法 737
28.13.2 數據庫連接配置 737
28.13.3 數據模型配置 738
28.14 BroPHP 2.0資源分布式部署 738
28.14.1 網站資源分布式部署方法 739
28.14.2 部署上傳的文件資源 739
28.14.3 部署縮略圖的資源位置 740
28.14.4 將公共資源和單個應用中的資源
分離部署 740
28.14.5 將臨時和緩存文件分離部署 741
28.15 BroPHP 2.0主程序與Web目錄分離 741
28.16 小結 742
本章必須掌握的知識點 742
本章需要了解的內容 742
第6部分 項目開發篇
第29章 B/S結構軟件開發流程 744
29.1 軟件開發過程的劃分 744
29.2 需求開發 745
29.2.1 需求分析流程 746
29.2.2 需求分析說明 746
29.2.3 輸出 747
29.3 系統設計 747
29.3.1 系統設計流程 748
29.3.2 系統設計說明 748
29.4 編碼測試 750
29.4.1 編碼與測試流程 750
29.4.2 編碼說明 751
29.4.3 結果測試說明 752
29.5 試運行 754
29.5.1 軟件試運行流程 754
29.5.2 軟件試運行說明 755
29.6 實施 755
29.6.1 軟件實施流程 756
29.6.2 軟件實施說明 756
29.7 驗收 757
29.7.1 軟件驗收流程 757
29.7.2 軟件驗收說明 758
29.7.3 驗收標準 759
29.8 服務與維護 759
29.8.1 責任人 759
29.8.2 收集信息 759
29.8.3 維護分析 760
29.8.4 軟件維護 760
29.8.5 改進 760
29.8.6 輸出 760
29.9 項目管理 760
29.9.1 軟件項目的計劃 761
29.9.2 軟件項目的組織 763
29.9.3 項目小組組織形式 763
29.10 項目參考 764
第30章 電子商城系統需求分析說明書 765
30.1 文檔介紹 765
30.1.1 編寫說明 766
30.1.2 項目背景 766
30.1.3 讀者對象 766
30.1.4 參考資料 766
30.1.5 術語與縮寫解釋 767
30.2 任務概述 767
30.2.1 產品的描述 767
30.2.2 系統目標 768
30.2.3 系統功能結構 769
30.2.4 系統流程圖 769
30.3 業務描述 773
30.3.1 后臺登錄管理 774
30.3.2 后臺操作界面管理 775
30.3.3 商品列表管理 777
30.3.4 前臺首頁管理 780
30.3.5 前臺商品管理 782
30.3.6 前臺購物管理 785
30.4 系統運行環境 788
30.4.1 硬件環境 788
30.4.2 軟件環境 789
30.5 需求設計評審 789
第31章 數據庫設計說明書 790
31.1 引言 790
31.1.1 編寫目的 790
31.1.2 背景 791
31.1.3 定義 791
31.1.4 參考文獻 791
31.2 外部設計 791
31.2.1 標識符和狀態 792
31.2.2 使用它的程序 792
31.2.3 約定 792
31.2.4 支持軟件 792
31.3 結構設計 792
概念結構設計 793
31.4 邏輯結構設計 801
31.4.1 E-R圖向關系模型的轉化 801
31.4.2 確定關系模式 801
31.4.3 消除冗余 802
31.5 物理結構設計 802
31.5.1 設計數據表結構 803
31.5.2 創建數據表 808
31.5.3 數據表記錄的輸入 813
31.6 安全保密設計 813
31.6.1 完整性 813
31.6.2 數據庫設計的其他問題 814
第32章 程序設計說明書 815
32.1 引言 815
32.1.1 編寫目的 815
32.1.2 背景 816
32.1.3 定義 816
32.1.4 使用技術 816
32.1.5 參考文獻 816
32.2 系統的結構 816
32.2.1 項目的目錄結構 817
32.2.2 模塊結構 817
32.2.3 程序結構 818
32.3 用戶管理模塊設計說明 822
32.3.1 功能 822
32.3.2 流程邏輯 822
32.3.3 接口 823
32.3.4 存儲分配 823
32.3.5 注釋設計 823
32.3.6 限制條件 823
32.3.7 測試計劃 824
32.3.8 尚未解決的問題 824
32.3.9 獲取添加用戶的界面操作add() 824
32.3.10 用戶數據入庫的操作insert() 825
32.3.11 查詢用戶列表操作index() 826
32.3.12 獲取修改用戶的界面操作mod() 827
32.3.13 用戶數據修改的操作update() 828
32.3.14 刪除用戶操作del() 828
附 錄
附錄A 編碼規范 831
A.1 緒論 831
A.1.1 適用范圍 831
A.1.2 目標 831
A.1.3 開發工具 832
A.2 PHP的文件格式 832
A.2.1 PHP開始和結束標記 832
A.2.2 注釋規范 833
A.2.3 空行和空白 833
A.2.4 字符串的使用 834
A.2.5 命名原則 835
A.2.6 語言結構 837
A.2.7 其他規范細節 840
A.3 MySQL設計規范 841
A.3.1 數據表的設計 841











A.3.2 索引設計原則 842
A.3.3 SQL語句設計 843
A.4 模板設計 843
附錄B PHP的安全和優化 845
B.1 網站安全Security 845
B.1.1 安全配置PHP 846
B.1.2 隱藏配置細節 849
B.1.3 隱藏敏感數據 850
B.1.4 清理用戶數據 851
B.1.5 數據加密 854
B.2 網站優化Optimize 854
B.2.1 PHP腳本級優化 854
B.2.2 使用代碼優化工具 856
B.2.3 緩存加速 857
B.2.4 HTTP加速 857
B.2.5 啟用GZIP內容壓縮 857
附錄C PHP 5.3∼5.6新特性 858
C.1 PHP 5.3中的新特性 858
C.2 PHP 5.4中的新特性 859
C.2.1 PHP 5.4中其他值得注意的改變 859
C.2.2 PHP 5.4中其他改動和特性 860
C.3 PHP 5.5中的新特性 860
C.4 PHP 5.6中的新特性 861
序: