ThinkPHP 5實戰 ( 簡體 字) |
作者:夏磊 | 類別:1. -> 程式設計 -> 網路編程 -> PHP |
譯者: |
出版社:清華大學出版社 | 3dWoo書號: 51680 詢問書籍請說出此書號!【缺書】 NT售價: 245 元 |
出版日:10/1/2019 |
頁數:187 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787302533580 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:PHP是一種通用開源腳本語言,開源、跨平臺、易于使用,主要適用于Web開發領域。MVC模式使得PHP在大型Web項目開發中耦合性低、重用性高、可維護性高、有利于軟件工程化管理。作為國內MVC框架中的佼佼者,ThinkPHP是一個免費開源、快速、簡單的、面向對象的、輕量級PHP開發框架,已經成長為國內最領先和最具影響力的Web應用開發框架,眾多的典型案例確保可以穩定用于商業以及門戶級網站的開發。 ThinkPHP 5版本是一個顛覆和重構版本,采用全新的架構思想,引入了更多的PHP新特性,優化了核心,減少了依賴,實現了真正的惰性加載,支持composer,并針對API開發做了大量的優化,包括路由、日志、異常、模型、數據庫、模板引擎和驗證等模塊都已經重構,不適合原有ThinkPHP 3.2項目的升級,所以編寫了本書。 本書編寫的目的是讓讀者能夠系統地學習ThinkPHP 5框架。即使讀者不了解MVC模式或者MVC框架,閱讀本書也不會有太大的問題,并且學完本書后能基于ThinkPHP 5開發自己的項目。為了加強讀者對內容的理解,每一章都有配套示例以及詳盡的注釋,便于讀者理解和學習。大部分章節都會配有練習,進行針對性的訓練。在本書的后半部分更是直接展示一個完整項目的開發流程,讓讀者可以在實踐中學習。畢竟“眼過千遍,不如手寫一遍”。 本書示例代碼 針對上一版代碼Github單個倉庫托管問題,本書實例代碼已經改為組織托管,每個項目都會使用獨立的倉庫保存。所有的實例都可以在Web開發中直接使用,省去了讀者“造輪子”的過程,以專注于業務邏輯開發。對于本書內容有任何疑問或者在實際開發中遇到問題的讀者可以在Github上的issue中提出問題,作者會進行解答。本書倉庫地址。如果下載有問題,請聯系,郵件主題為“ThinkPHP5實戰”。 本書開發環境 操作系統:Windows10專業版 Web服務器:PHP自帶 PHP版本:PHP 7.2.5(NTS)(ThinkPHP 5要求PHP版本大于等于5.6即可) IDE:PHPStorm 2018.1 ThinkPHP版本:ThinkPHP 5.0.19(本書提到的ThinkPHP 5即指這個版本) 瀏覽器:Google Chrome 66(更高的版本也沒有問題) 本書適合讀者 ? Web開發愛好者 ? 擁有PHP基礎想深入學習PHP大型項目開發的人員 ? 大中專院校以及培訓機構的講師 ? 初/中級網站開發人員
著 者 2019年8月 |
內容簡介:本書針對ThinkPHP 5進行編寫,內容由淺入深,由局部到整體,以實用性為目標,系統地介紹ThinkPHP框架的相關技術及其在Web開發中的應用。 本書分為18章,內容包括開發環境搭建、配置系統、路由、控制器、數據庫操作層、模型層、視圖、驗證器、緩存、Session和Cookie、命令行應用、開發調試、服務器部署、數據庫設計、多人博客系統開發、圖書管理系統開發、論壇系統開發與微信小程序商城系統開發。如果讀者在閱讀本書時遇到問題,還可以到Github上提出問題獲得解答。 本書適合ThinkPHP初學者、PHP應用開發人員,也適合作為高等院校和培訓學校計算機相關專業的師生教學參考。 |
目錄:第1章搭建開發環境 1 1.1下載開發工具/軟件 1 1.2HelloWorld 1 第2章配置系統 5 2.1配置的路徑 5 2.2配置的格式 5 2.3配置的加載順序 6 2.4配置的讀寫與示例 6 2.5小結 8 第3章路由 9 3.1路由模式 9 3.1.1普通模式 9 3.1.2混合模式 10 3.1.3強制模式 10 3.2路由定義 10 3.2.1編碼定義 10 3.2.2配置定義 11 3.3路由條件 11 3.4路由地址 13 3.4.1路由到模塊/控制器 13 3.4.2重定向 13 3.4.3路由到控制器方法 14 3.4.4路由到類靜態方法 14 3.4.5路由到閉包 14 3.5Restful路由 14 3.5.1普通資源 14 3.5.2嵌套資源 15 3.6路由分組 16 3.7全局404路由 16 3.8路由綁定 17 3.9URL生成 17 3.10小結 17 第4章控制器 18 4.1定義 18 4.2輸出響應 18 4.3配置響應格式 19 4.4初始化操作和前置操作 19 4.5跳轉和重定向 20 4.6控制器嵌套 20 4.7獲取請求詳情 20 4.8獲取輸入數據 21 4.8.1數據過濾方法 22 4.8.2獲取部分數據 22 4.8.3排除部分數據 22 4.8.4數據類型處理 22 4.9參數綁定 23 4.10頁面緩存 23 4.11小結 23 第5章數據庫操作層 24 5.1數據庫配置 24 5.2基本操作 26 5.3使用查詢構造器 27 5.3.1添加數據 27 5.3.2更新數據 27 5.3.3查詢數據 28 5.3.4刪除數據 28 5.4查詢語法 29 5.4.1查詢表達式和查詢方法 29 5.4.2查詢表達式示例 30 5.5連貫操作 31 5.6連貫操作示例 32 5.6.1table 32 5.6.2alias 33 5.6.3field 33 5.6.4order/orderRaw 33 5.6.5limit 34 5.6.6group 34 5.6.7having 34 5.6.8join 34 5.6.9union 35 5.6.10distinct 35 5.6.11page 35 5.6.12lock 35 5.6.13cache 36 5.6.14relation 36 5.7查詢事件與SQL調試 36 5.7.1查詢事件 36 5.7.2SQL調試 37 5.7.3事務 37 5.7.4調用存儲過程或函數 37 第6章模型層 38 6.1模型定義 38 6.2插入數據 38 6.3更新數據 39 6.4批量更新(只支持主鍵) 39 6.5刪除數據 40 6.6查詢數據 40 6.7批量查詢 40 6.8聚合查詢 41 6.9get/set 41 6.10自動時間戳處理 42 6.11只讀字段 43 6.12軟刪除 43 6.13自動完成 44 6.14數據類型自動轉換 45 6.15快捷查詢 46 6.16全局查詢條件 46 6.17模型事件 47 6.18關聯模型 48 6.18.1一對一關聯 48 6.18.2一對一關聯模型數據操作 48 6.18.3一對一從屬關聯 49 6.18.4一對多關聯 49 6.18.5一對多關聯模型數據操作 50 6.18.6一對多從屬關聯 50 6.18.7多對多關聯 50 6.18.8多對多模型數據操作 51 6.18.9多對多從屬關聯 52 6.18.10不定類型關聯模型 52 6.18.11關聯數據一次查詢優化 54 第7章視圖 56 7.1渲染方法 56 7.2模板引擎配置 56 7.3模板賦值與渲染 57 7.4Think模板引擎語法 57 7.4.1變量輸出 58 7.4.2模板內置變量 58 7.4.3默認值 58 7.4.4使用函數 59 7.4.5算術運算符 59 7.4.6三目運算符 59 7.4.7不解析輸出 60 7.4.8布局文件 60 7.4.9模板包含 62 7.4.10被包含模板使用變量 63 7.5模板繼承 64 7.5.1繼承語法 64 7.5.2繼承模板合并 65 7.5.3模板繼承注意事項 65 7.6模板標簽庫 66 7.6.1導入標簽庫 66 7.6.2使用標簽庫 66 7.6.3標簽預加載 66 7.6.4內置標簽 67 7.6.5內置標簽示例 68 7.6.6標簽嵌套 72 第8章驗證器 73 8.1驗證器類 73 8.2驗證規則 74 8.3自定義規則 76 8.4控制器/模型驗證 77 8.5便捷驗證 78 8.6小結 78 第9章緩存 79 9.1緩存配置 79 9.2緩存操作 79 第10章Session和Cookie 81 10.1Session和Cookie區別 81 10.1.1Session 81 10.1.2Cookie 81 10.2Session配置 81 10.3Session操作 82 10.4Cookie配置 82 10.5Cookie操作 83 第11章命令行應用 84 第12章開發調試 86 12.1調試模式的開啟和關閉 86 12.2變量調試 87 12.3執行流程 87 12.4性能調試 88 12.5異常 88 12.5.1異常配置 88 12.5.2異常處理器 89 12.6異常拋出 89 第13章服務器部署 91 13.1apt-get常用命令 91 13.2安裝步驟 92 13.3配置文件路徑 92 13.4服務管理命令 92 13.5配置默認站點 92 第14章數據庫設計 94 14.1設計原則 94 14.2設計工具 94 第15章多人博客系統開發 100 15.1項目目的 100 15.2需求分析 100 15.3功能分析 101 15.4數據庫設計 101 15.4.1數據表模型圖 101 15.4.2數據庫關系說明 102 15.4.3數據庫字典 102 15.5模塊設計 104 15.5.1網站前臺 105 15.5.2用戶管理端 107 15.6效果展示 107 15.7代碼示例 110 15.7.1用戶注冊 110 15.7.2用戶登錄 112 15.7.3文章詳情 113 15.7.4發表文章 115 15.7.5接入統計系統 117 15.8項目總結 118 15.9項目完整代碼 118 第16章圖書管理系統開發 119 16.1項目目的 119 16.2MVC+Repository+Service介紹 119 16.3需求分析 120 16.4功能分析 120 16.5模塊設計 120 16.6數據庫設計 121 16.6.1數據庫模型關系 121 16.6.2數據庫關系說明 122 16.6.3數據庫字典 123 16.7核心業務流程 125 16.8效果展示 125 16.9代碼示例 128 16.10項目總結 137 16.11項目完整代碼 137 第17章論壇系統開發 138 17.1項目目的 138 17.2需求分析 138 17.3功能分析 139 17.4模塊設計 139 17.5數據庫設計 139 17.5.1數據庫表關系 140 17.5.2數據庫表關系說明 141 17.5.3數據庫字典 141 17.6效果展示 145 17.7代碼示例 152 17.7.1用戶注冊 152 17.7.2新增版塊 153 17.7.3編輯版塊 153 17.7.4模型基類 154 17.7.5主題模型類 155 17.7.6倉儲基類 158 17.7.7主題倉儲類 160 17.7.8用戶業務類 164 17.7.9自定義配置 168 17.7.10讀取自定義配置 168 17.7.11免登錄Action定義 169 17.7.12免登錄Action配置 169 17.7.13用戶注冊(顯示驗證碼) 171 17.7.14用戶注冊(檢測驗證碼) 172 17.8項目總結 173 17.9項目完整代碼 173 第18章微信小程序商城系統開發 174 18.1項目目的 174 18.2需求分析 174 18.3功能分析 174 18.4模塊設計 175 18.5數據庫設計 175 18.5.1數據庫關系 175 18.5.2數據庫關系說明 176 18.5.3數據庫字典 176 18.6效果展示 178 18.7代碼示例 184 18.8項目總結 189 18.9項目完整代碼 189 后記 190 |
序: |