注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)網(wǎng)絡(luò)編程PHP MVC 開發(fā)實(shí)戰(zhàn)

PHP MVC 開發(fā)實(shí)戰(zhàn)

PHP MVC 開發(fā)實(shí)戰(zhàn)

定 價(jià):¥98.80

作 者: 李開涌
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: PHP 程序設(shè)計(jì) 計(jì)算機(jī)/網(wǎng)絡(luò)

ISBN: 9787111428527 出版時(shí)間: 2013-07-01 包裝: 平裝
開本: 16 頁數(shù): 618 字?jǐn)?shù):  

內(nèi)容簡介

  MVC是一種先進(jìn)的開發(fā)模式,能夠解決團(tuán)隊(duì)開發(fā)之間協(xié)同配合的問題,使得網(wǎng)站各部件以更高的效率運(yùn)行。MVC模式將網(wǎng)站分為3大部件,分別為模型、視圖、控制器。這3大部件各自分離,但又相互依存,最終形成了一個(gè)容易維護(hù)、容易擴(kuò)展、高效運(yùn)行的網(wǎng)站平臺(tái)。對(duì)于后臺(tái)程序員,借助于MVC模式就可以更加專注于功能的實(shí)現(xiàn),而不需要太多地涉及頁面與前端。這種分工協(xié)作的最終目的是提高開發(fā)效率及項(xiàng)目質(zhì)量。對(duì)于個(gè)人項(xiàng)目,也許在其他編程技術(shù)(例如Java、Python)中,MVC模式并沒有優(yōu)勢,但在PHP中,由于支持混合編程,所以使用MVC模式進(jìn)行編程,能顯著提高工作效率?!禤HP MVC 開發(fā)實(shí)戰(zhàn)》是國內(nèi)第一本專門介紹PHP MVC開發(fā)模式的圖書,全書圍繞MVC實(shí)現(xiàn)思路進(jìn)行細(xì)致的講解。通過MVC編程模式,以點(diǎn)帶面,全面深入探討PHP核心技術(shù)。同時(shí),《PHP MVC 開發(fā)實(shí)戰(zhàn)》也是一本深入介紹利用PHP構(gòu)建高性能網(wǎng)站的圖書,通過MVC的數(shù)據(jù)庫中間件,可以輕松實(shí)現(xiàn)網(wǎng)站群體、讀寫分離等高級(jí)應(yīng)用,本書在此基礎(chǔ)上還會(huì)進(jìn)一步介紹當(dāng)前流行的NoSQL應(yīng)用、全文搜索應(yīng)用等。最后,作者通過一個(gè)自行編寫的MVC框架,引導(dǎo)讀者開發(fā)屬于自己的PHP MVC框架?!禤HP MVC 開發(fā)實(shí)戰(zhàn)》內(nèi)容通俗易懂、示例形象,適合廣大的Web從業(yè)人員閱讀。由于PHP非常簡單、易用,所以就算是未接觸過PHP的讀者或者初學(xué)者,只要掌握了基礎(chǔ)的面向?qū)ο缶幊趟枷刖涂梢暂p松上手。

作者簡介

  李開涌,IT作家,技術(shù)顧問。曾供職于電信盈科,主要從事分布式集成系統(tǒng)的開發(fā)。擁有超過8年的開源技術(shù)編程經(jīng)驗(yàn),對(duì)Linux、FreeBSD以及Hadoop集群等均有豐富的使用及開發(fā)經(jīng)驗(yàn)。同時(shí),還是微軟SilverlightMVP,精通微軟的.NET平臺(tái)技術(shù),是國內(nèi)最早從事Windows Phone技術(shù)普及的IT作者,曾著有《Windows Phone7應(yīng)用開發(fā)入門與實(shí)踐》一書。目前從事分布式開發(fā)及云技術(shù)研究。

圖書目錄

目    錄
前言
基  礎(chǔ)  篇
第1章  開發(fā)前準(zhǔn)備2
1.1  PHP與MVC概述3
1.2  開發(fā)環(huán)境搭建7
1.2.1  在Windows下使用一鍵安裝包8
1.2.2  在Linux平臺(tái)安裝LNMP11
1.3  開發(fā)工具介紹20
1.3.1  PHP Coder20
1.3.2  PHP Editor21
1.3.3  NetBeans IDE21
1.3.4  Eclipse PDT22
1.3.5  Zend Studio24
1.3.6  Adobe Dreamweaver25
1.3.7  VS.PHP27
1.4  SVN版本控制28
1.4.1  SVN介紹28
1.4.2  SVN的安裝29
1.4.3  TortoiseSVN的簡單使用32
1.4.4  TortoiseSVN文件管理35
1.4.5  SVN版本庫權(quán)限配置38
1.5  小結(jié)40
第2章  面向?qū)ο蠡A(chǔ)41
2.1  面向?qū)ο蠼榻B42
2.2  PHP面向?qū)ο蠡A(chǔ)43
2.2.1  class關(guān)鍵字43
2.2.2  類中的成員44
2.2.3  實(shí)例化類46
2.3  類中的方法47
2.3.1  方法的參數(shù)47
2.3.2  方法的返回值48
2.3.3  訪問修飾符49
2.3.4  $this關(guān)鍵字50
2.4  類的繼承50
2.4.1  子類繼承父類51
2.4.2  重寫父類中的成員屬性52
2.4.3  final關(guān)鍵字53
2.5  靜態(tài)類成員54
2.5.1  static關(guān)鍵字54
2.5.2  訪問靜態(tài)類成員(self::parent::)55
2.5.3  類常量57
2.6  小結(jié)58
第3章  類的高級(jí)特性59
3.1  類對(duì)象的克?。╟lone)60
3.2  類接口(interface)60
3.2.1  接口的意義60
3.2.2  定義接口61
3.2.3  實(shí)現(xiàn)接口(implements)62
3.3  抽象類與抽象方法64
3.3.1  理解抽象概念65
3.3.2  定義抽象類和方法(abstract)65
3.3.3  使用抽象類66
3.3.4  接口與抽象類的區(qū)別67
3.4  類的異常68
3.4.1  Exception類68
3.4.2  使用try、catch、throw語句69
3.5  小結(jié)70
實(shí)  戰(zhàn)  篇
第4章  PHP MVC發(fā)展?fàn)顩r72
4.1  出身豪門的Zend Framework73
4.1.1  Zend Framework簡介73
4.1.2  安裝Zend Framework73
4.1.3  使用Zend Framework實(shí)現(xiàn)MVC75
4.1.4  Zend Framework核心組件76
4.2  功能強(qiáng)大的Symfony80
4.2.1  Symfony簡介80
4.2.2  獲得Symfony81
4.2.3  實(shí)現(xiàn)一個(gè)簡單的MVC82
4.2.4  Symfony的配置文件85
4.3  靈活完善的CakePHP85
4.3.1  CakePHP簡介85
4.3.2  下載安裝CakePHP86
4.3.3  使用CakePHP構(gòu)建MVC編程86
4.3.4  好用的CakePHP視圖助手89
4.4  使用廣泛的CodeIgniter89
4.4.1  CodeIgniter簡介89
4.4.2  安裝CodeIgniter90
4.4.3  使用CodeIgniter實(shí)現(xiàn)MVC91
4.5  高效便捷的ThinkPHP94
4.5.1  ThinkPHP介紹94
4.5.2  下載安裝ThinkPHP95
4.5.3  使用ThinkPHP實(shí)現(xiàn)MVC96
4.5.4  高效的ThinkPHP視圖引擎98
4.6  小結(jié)100
第5章  ThinkPHP開發(fā)入門101
5.1  大道至簡、開發(fā)由我102
5.1.1  入口文件102
5.1.2  兩種創(chuàng)建項(xiàng)目的方式103
5.1.3  模塊分組104
5.2  ThinkPHP目錄106
5.2.1  系統(tǒng)目錄106
5.2.2  項(xiàng)目目錄110
5.3  配置文件111
5.3.1  選項(xiàng)配置111
5.3.2  靜態(tài)緩存配置113
5.3.3  路由配置115
5.4  小結(jié)115
第6章  ThinkPHP開發(fā)MVC應(yīng)用116
6.1  ThinkPHP中的URL117
6.1.1  URL模式117
6.1.2  URL路由119
6.1.3  自動(dòng)生成匹配的URL121
6.1.4  實(shí)現(xiàn)文件偽靜態(tài)122
6.2  模型(Model)123
6.2.1  創(chuàng)建模型123
6.2.2  實(shí)例化模型124
6.2.3  模型初始化(_initialize())125
6.3  控制器(Controller)126
6.3.1  創(chuàng)建控制器126
6.3.2  控制器中的動(dòng)作(Action)126
6.3.3  控制器的調(diào)用128
6.3.4  項(xiàng)目空控制器與控制器空動(dòng)作129
6.3.5  動(dòng)作的前后操作131
6.4  視圖(View)132
6.4.1  創(chuàng)建和使用視圖132
6.4.2  系統(tǒng)變量與常量133
6.4.3  在視圖中使用函數(shù)134
6.4.4  數(shù)據(jù)循環(huán)135
6.4.5  條件判斷138
6.4.6  使用外部文件141
6.4.7  導(dǎo)入標(biāo)簽庫142
6.4.8  使用布局145
6.5  小結(jié)147
第7章  ThinkPHP的數(shù)據(jù)庫操作148
7.1  定義數(shù)據(jù)表模型149
7.1.1  模型映射149
7.1.2  自定義模型149
7.1.3  create方法151
7.1.4  模型屬性154
7.2  基礎(chǔ)模型(Model)158
7.2.1  連貫操作159
7.2.2  CURD159
7.2.3  查詢語言163
7.2.4  使用原生的SQL語言166
7.3  關(guān)聯(lián)模型(RelationModel)167
7.3.1  關(guān)聯(lián)關(guān)系167
7.3.2  關(guān)聯(lián)定義168
7.3.3  關(guān)聯(lián)模型的CURD169
7.4  高級(jí)模型(AdvModel)174
7.4.1  定位查詢174
7.4.2  動(dòng)態(tài)查詢175
7.4.3  內(nèi)容存文本176
7.5  大數(shù)據(jù)支持176
7.5.1  分布式數(shù)據(jù)庫177
7.5.2  讀寫分離179
7.5.3  數(shù)據(jù)表分區(qū)183
7.6  小結(jié)187
第8章  安全與調(diào)試188
8.1  構(gòu)建穩(wěn)健及安全的MVC189
8.2  ThinkPHP內(nèi)置的安全機(jī)制189
8.2.1  表單令牌189
8.2.2  字段檢測190
8.2.3  數(shù)據(jù)驗(yàn)證193
8.2.4  數(shù)據(jù)驗(yàn)證碼197
8.3  ThinkPHP安全日志機(jī)制201
8.3.1  記錄方式201
8.3.2  系統(tǒng)日志202
8.3.3  應(yīng)用日志202
8.4  使用消息隊(duì)列機(jī)制204
8.4.1  HTTPSQS基礎(chǔ)204
8.4.2  安裝HTTPSQS205
8.4.3  測試HTTPSQS207
8.4.4  在MVC中使用HTTPSQS209
8.5  ThinkPHP程序調(diào)試機(jī)制212
8.5.1  開啟調(diào)試功能212
8.5.2  代碼編譯概念214
8.5.3  異常定制215
8.5.4  性能調(diào)試216
8.6  小結(jié)218
第9章  ThinkPHP功能庫220
9.1  數(shù)據(jù)處理221
9.1.1  XML引擎221
9.1.2  返回XML228
9.1.3  返回Json232
9.1.4  使用Json及Jsonp235
9.2  ThinkPHP函數(shù)庫241
9.2.1  快捷方法241
9.2.2  基礎(chǔ)函數(shù)庫242
9.2.3  擴(kuò)展函數(shù)庫245
9.3  ThinkPHP多語言支持248
9.3.1  部署多語言248
9.3.2  實(shí)現(xiàn)多語言249
9.3.3  多語言與客戶端250
9.4  客戶端252
9.4.1  封裝的Session252
9.4.2  封裝的Cookie256
9.5  小結(jié)257
第10章  網(wǎng)站靜態(tài)化259
10.1  Cache類260
10.1.1  緩存的方式260
10.1.2  開啟緩存260
10.1.3  安裝Memcached261
10.1.4  使用Memcached265
10.2  Memcached實(shí)戰(zhàn)應(yīng)用267
10.2.1  頁面局部緩存267
10.2.2  緩存數(shù)據(jù)集267
10.2.3  使用Memcache存放Session270
10.3  使用Redis緩存274
10.3.1  Redis的安裝274
10.3.2  安裝Redis擴(kuò)展277
10.3.3  測試Redis279
10.3.4  Redis緩存279
10.4  靜態(tài)緩存282
10.4.1  靜態(tài)緩存配置282
10.4.2  靜態(tài)緩存規(guī)則283
10.5  小結(jié)286
第11章  ThinkPHP擴(kuò)展287
11.1  使用擴(kuò)展288
11.1.1  擴(kuò)展的分類288
11.1.2  模板引擎擴(kuò)展291
11.2  網(wǎng)絡(luò)操作293
11.2.1  文件上傳293
11.2.2  Nginx文件上傳進(jìn)度295
11.2.3  FTP文件上傳304
11.2.4  下載文件305
11.2.5  Socket套接字編程306
11.2.6  定位當(dāng)前位置308
11.2.7  發(fā)送電子郵件309
11.3  數(shù)據(jù)處理311
11.3.1  數(shù)據(jù)加密311
11.3.2  數(shù)據(jù)編碼轉(zhuǎn)換313
11.3.3  數(shù)據(jù)分頁314
11.3.4  日期數(shù)據(jù)315
11.3.5  Input類317
11.3.6  GD庫繪制圖形318
11.4  行為擴(kuò)展320
11.4.1  行為概述320
11.4.2  內(nèi)置行為擴(kuò)展322
11.4.3  自定義行為擴(kuò)展323
11.5  小結(jié)325
第12章  SOAP分布式開發(fā)326
12.1  分布式開發(fā)概念327
12.1.1  SOA與SOAP327
12.1.2  PHP 5分布式開發(fā)329
12.2  SOAP消息體331
12.2.1  WSDL文件331
12.2.2  定義根消息體definitions335
12.2.3  type類型335
12.2.4  portType端口類型336
12.2.5  message消息列表337
12.2.6  binding服務(wù)綁定描述337
12.2.7  service服務(wù)描述338
12.2.8  可視化創(chuàng)建WSDL338
12.2.9  使用nusoap創(chuàng)建WSDL341
12.2.10  ThinkPHP生成SOAP服務(wù)343
12.3  使用soapUI測試WSDL347
12.3.1  soapUI簡介347
12.3.2  安裝soapUI348
12.3.3  創(chuàng)建項(xiàng)目349
12.3.4  測試項(xiàng)目350
12.3.5  負(fù)載測試351
12.4  小結(jié)353
第13章  整合Smarty模板引擎354
13.1  Smarty模板引擎介紹355
13.2  使用Smarty356
13.2.1  在PHP中使用Smarty356
13.2.2  開啟ThinkPHP模板擴(kuò)展358
13.2.3  以擴(kuò)展的方式使用全功能Smarty358
13.3  Smarty模板函數(shù)和標(biāo)簽360
13.3.1  include(包含文件)361
13.3.2  capture(暫存數(shù)據(jù))361
13.3.3  include_php(包含PHP文件)362
13.3.4  insert(插入函數(shù))362
13.3.5  literal(原文本輸出)363
13.3.6  php(執(zhí)行PHP語句塊)363
13.3.7  strip(保留空格和回車符)364
13.4  Smarty模板控制語句364
13.4.1  if、elseif(判斷語句)364
13.4.2  foreach(循環(huán)數(shù)據(jù))365
13.4.3  section(遍歷數(shù)組)366
13.5  變量調(diào)節(jié)器367
13.5.1  capitalize(首字母大寫)367
13.5.2  count_characters(統(tǒng)計(jì)字符)367
13.5.3  count_paragraphs(統(tǒng)計(jì)段落)367
13.5.4  count_sentences(統(tǒng)計(jì)句數(shù))368
13.5.5  count_words(統(tǒng)計(jì)單詞)368
13.5.6  date_format(格式化日期)368
13.5.7  escape(字符轉(zhuǎn)碼)369
13.5.8  replace(字符替換)369
13.5.9  regex_replace(正則替換)370
13.5.10  truncate(字符截?。?70
13.6  視圖助手370
13.6.1  html_image(生成圖像)370
13.6.2  html_options(生成表單選擇組件)371
13.6.3  html_radios(生成表單單選組件)372
13.6.4  html_checkboxes(生成表單復(fù)選組件)373
13.6.5  html_select_date(生成表單日期選擇組件)374
13.6.6  html_select_time(生成表單時(shí)間選擇組件)376
13.6.7  html_table(生成表格)377
13.7  Smarty對(duì)象方法378
13.7.1  display(顯示模板)378
13.7.2  fetch(獲取輸出內(nèi)容)379
13.7.3  configLoad(加載配置信息)379
13.7.4  registerPlugin(注冊(cè)插件)380
13.8  Smarty緩存383
13.8.1  開啟緩存383
13.8.2  局部緩存384
13.9  小結(jié)386
第14章  整合Coreseek全文搜索服務(wù)387
14.1  全文索引概述388
14.2  Coreseek基礎(chǔ)389
14.2.1  Coreseek概述389
14.2.2  在Windows下安裝Coreseek390
14.2.3  在Linux下安裝Coreseek394
14.3  Coreseek管理工具397
14.3.1  indexer397
14.3.2  searchd400
14.3.3  search402
14.4  創(chuàng)建索引403
14.4.1  索引源分類403
14.4.2  增量索引407
14.4.3  實(shí)時(shí)索引409
14.5  在MVC中搜索數(shù)據(jù)412
14.5.1  安裝Sphinx擴(kuò)展模塊412
14.5.2  使用PHP接口413
14.5.3  在MVC中搜索數(shù)據(jù)414
14.5.4  實(shí)現(xiàn)關(guān)鍵詞高亮顯示418
14.6  小結(jié)420
第15章  使用MongoDB421
15.1  MongoDB介紹422
15.2  MongoDB的安裝424
15.2.1  在Windows下安裝MongoDB424
15.2.2  在Linux下安裝MongoDB426
15.3  MongoDB的使用428
15.3.1  理解MongoDB的數(shù)據(jù)結(jié)構(gòu)428
15.3.2  數(shù)據(jù)庫管理429
15.3.3  文檔數(shù)據(jù)類型430
15.3.4  插入數(shù)據(jù)432
15.3.5  查詢數(shù)據(jù)433
15.3.6  更新數(shù)據(jù)436
15.3.7  刪除數(shù)據(jù)436
15.4  條件操作437
15.4.1  條件判斷語句437
15.4.2  $all匹配全部438
15.4.3  $exists 檢查字段438
15.4.4  null 空值處理439
15.4.5  $ne比較439
15.4.6  $mod 取模運(yùn)算440
15.4.7  $in、nin枚舉查詢440
15.4.8  $or、$nor判斷查詢441
15.4.9  $type映射查詢442
15.4.10  使用正則表達(dá)式匹配442
15.4.11  limit、skip 限制查詢443
15.4.12  count 查詢記錄條數(shù)444
15.4.13  sort 查詢結(jié)果排序444
15.5  性能優(yōu)化445
15.5.1  使用索引445
15.5.2  固定集合448
15.5.3  GridFS450
15.5.4  Profile優(yōu)化器450
15.6  在MVC中使用MongoDB451
15.6.1  安裝PHP擴(kuò)展451
15.6.2  開啟MongoDB用戶驗(yàn)證453
15.6.3  ThinkPHP操作MongoDB455
15.7  小結(jié)459
第16章  Redis實(shí)戰(zhàn)460
16.1  Redis的使用461
16.1.1  Redis概述461
16.1.2  常用管理命令462
16.1.3  Redis用戶驗(yàn)證464
16.2  Redis數(shù)據(jù)類型465
16.2.1  String類型465
16.2.2  Hash類型467
16.2.3  List類型469
16.2.4  Sets類型473
16.2.5  Zset類型477
16.2.6  使用phpRedisAdmin480
16.3  Redis高級(jí)使用483
16.3.1  數(shù)據(jù)持久化483
16.3.2  虛擬內(nèi)存484
16.3.3  事務(wù)處理484
16.3.4  主從同步486
16.4  在MVC中使用Redis487
16.4.1  在PHP中使用Redis487
16.4.2  在MVC中進(jìn)行CURD操作491
16.4.3  數(shù)據(jù)分頁496
16.5  小結(jié)498
項(xiàng)  目  篇
第17章  開發(fā)論壇系統(tǒng)500
17.1  開發(fā)前準(zhǔn)備501
17.1.1  系統(tǒng)介紹501
17.1.2  系統(tǒng)預(yù)覽501
17.1.3  架構(gòu)設(shè)計(jì)505
17.1.4  系統(tǒng)部署511
17.2  系統(tǒng)整體界面設(shè)計(jì)513
17.2.1  布局方案514
17.2.2  論壇首頁516
17.2.3  論壇版塊519
17.3  用戶模塊524
17.3.1  用戶登錄524
17.3.2  用戶注冊(cè)528
17.3.3  使用微博賬號(hào)登錄532
17.3.4  將現(xiàn)有賬號(hào)綁定到微博535
17.4  發(fā)表帖子模塊537
17.4.1  整合百度編輯器537
17.4.2  上傳圖片540
17.4.3  管理圖片542
17.4.4  上傳附件543
17.4.5   數(shù)據(jù)提交處理544
17.5   帖子內(nèi)容模塊545
17.5.1  帖子正文545
17.5.2  回復(fù)列表547
17.5.3  回復(fù)帖子550
17.6   帖子管理模塊551
17.6.1  刪除帖子551
17.6.2  鎖定帖子553
17.6.3  置頂帖子554
17.6.4  推薦帖子554
17.7  行為攔截器555
17.7.1  統(tǒng)計(jì)瀏覽量555
17.7.2  登記瀏覽位置556
17.8   帖子搜索模塊557
17.8.1  標(biāo)題搜索557
17.8.2  使用全文搜索558
17.9  小結(jié)562
第18章  開發(fā)自己的MVC框架563
18.1  開發(fā)前準(zhǔn)備564
18.1.1  開發(fā)MVC框架的思路564
18.1.2  文件結(jié)構(gòu)564
18.2  核心類庫565
18.2.1  初始化565
18.2.2  URL處理566
18.3  控制器的開發(fā)567
18.3.1  類自動(dòng)載入568
18.3.2  加載模板引擎(View)569
18.3.3  處理消息(message)569
18.4  模型的開發(fā)572
18.4.1  使用PDO572
18.4.2  模型實(shí)例化573
18.4.3  實(shí)現(xiàn)連貫操作573
18.4.4  讀取數(shù)據(jù)574
18.4.5  插入數(shù)據(jù)576
18.4.6  更新數(shù)據(jù)577
18.4.7  刪除數(shù)據(jù)578
18.5  擴(kuò)展類庫582
18.5.1  Session驅(qū)動(dòng)擴(kuò)展583
18.5.2  緩存驅(qū)動(dòng)擴(kuò)展586
18.6  測試MVC框架588
18.6.1  創(chuàng)建項(xiàng)目589
18.6.2  測試CURD590
18.6.3  測試驅(qū)動(dòng)594
18.7  小結(jié)595
附錄596
附錄A  讓Nginx支持Pathinfo模式596
附錄B  配置團(tuán)隊(duì)開發(fā)環(huán)境597  

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) hotzeplotz.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)