跟兄弟連學PHP ( 簡體 字) |
作者:兄弟連IT教育 | 類別:1. -> 程式設計 -> 網路編程 -> 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 |
序: |