有關MVC的相關知識(一)

一、MVC全名是Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫,php

一種軟件設計典範,用一種業務邏輯、數據、界面顯示分離的方法組織代碼,將業務邏輯彙集到一個部件裏面,mysql

在改進和個性化定製界面及用戶交互的同時,不須要從新編寫業務邏輯。MVC被獨特的發展起來用於映射傳sql

統的輸入、處理和輸出功能在一個邏輯的圖形化用戶界面的結構中。數據庫

 

二、MVC編程模式編輯

MVC 是一種使用 MVC(Model View Controller 模型-視圖-控制器)設計建立 Web 應用程序的模式: [1]
  • Model(模型)表示應用程序核心(好比數據庫記錄列表)。
  • View(視圖)顯示數據(數據庫記錄)。
  • Controller(控制器)處理輸入(寫入數據庫記錄)。
MVC 模式同時提供了對 HTML、CSS 和 JavaScript 的徹底控制。
Model(模型)是應用程序中用於處理應用程序數據邏輯的部分。
  一般模型對象負責在數據庫中存取數據。
View(視圖)是應用程序中處理數據顯示的部分。
  一般視圖是依據模型數據建立的。
Controller(控制器)是應用程序中處理用戶交互的部分。
  一般控制器負責從視圖讀取數據,控制用戶輸入,並向模型發送數據。
 
 

三、MVC設計模式的擴展

  經過在ASP.NET中的MVC模式編寫的,具備極其良好的可擴展性。它能夠輕鬆實現如下功能:編程

  ①實現一個模型的多個視圖;設計模式

  ②採用多個控制器;數組

  ③當模型改變時,全部視圖將自動刷新;服務器

  ④全部的控制器將相互獨立工做。mvc

 
四、收集例子代碼:
 1 <?php 
 2 /** 
 3 * 一個用來訪問MySQL的類 
 4 * 僅僅實現演示所需的基本功能,沒有容錯等 
 5 * 代碼未做修改,只是把註釋翻譯一下,加了點本身的體會 
 6 */
 7 class DataAccess { 
 8 var $db; //用於存儲數據庫鏈接 
 9 var $query; //用於存儲查詢源 
10 //! 構造函數. 
11 /** 
12 * 建立一個新的DataAccess對象 
13 * @param $host 數據庫服務器名稱 
14 * @param $user 數據庫服務器用戶名 
15 * @param $pass 密碼 
16 * @param $db 數據庫名稱 
17 */
18 function __construct($host,$user,$pass,$db) { 
19 $this->db=mysql_pconnect($host,$user,$pass); //鏈接數據庫服務器 
20 mysql_select_db($db,$this->db); //選擇所需數據庫 
21 //特別注意$db和$this->db的區別 
22 //前者是構造函數參數 
23 //後者是類的數據成員 
24 } 
25 //! 執行SQL語句 
26 /** 
27 * 執行SQL語句,獲取一個查詢源並存儲在數據成員$query中 
28 * @param $sql 被執行的SQL語句字符串 
29 * @return void 
30 */
31 function fetch($sql) { 
32 $this->query=mysql_unbuffered_query($sql,$this->db); // Perform query here 
33 } 
34 //! 獲取一條記錄 
35 /** 
36 * 以數組形式返回查詢結果的一行記錄,經過循環調用該函數可遍歷所有記錄 
37 * @return mixed 
38 */
39 function getRow () { 
40 if ( $row=mysql_fetch_array($this->query,MYSQL_ASSOC) ) 
41 //MYSQL_ASSOC參數決定了數組鍵名用字段名錶示 
42 return $row; 
43 else
44 return false; 
45 } 
46 } 
47 ?>~~~~~~~~~待續。。。。
相關文章
相關標籤/搜索