PHP的MVC实现(3)
2008-08-23 09:26
281 查看
接下来是视图??我去掉了HTML以节省空间,你可以查看这篇文章的完整代码。
最后是控制器,我们将把视图实现为一个子类。
注意这不是实现MVC的唯一方式??比如你可以用控制器实现模型同时整合视图。这只是演示模式的一种方法。
以下是代码片段:<?php /** * Binds product data to HTML rendering */ class ProductView { /** * Private * $model an instance of the ProductModel class */ var $model; /** * Private * $output rendered HTML is stored here for display */ var $output; //! A constructor. /** * Constucts a new ProductView object * @param $model an instance of the ProductModel class */ function ProductView (&$model) { $this->model=& $model; } //! A manipulator /** * Builds the top of an HTML page * @return void */ function header () { } //! A manipulator /** * Builds the bottom of an HTML page * @return void */ function footer () { } //! A manipulator /** * Displays a single product * @return void */ function productItem($id=1) { $this->model->listProduct($id); while ( $product=$this->model->getProduct() ) { // Bind data to HTML } } //! A manipulator /** * Builds a product table * @return void */ function productTable($rownum=1) { $rowsperpage=’20’; $this->model->listProducts($rownum,$rowsperpage); while ( $product=$this->model->getProduct() ) { // Bind data to HTML } } //! An accessor /** * Returns the rendered HTML * @return string */ function display () { return $this->output; } } ?> |
以下是代码片段:<?php /** * Controls the application */ class ProductController extends ProductView { //! A constructor. /** * Constucts a new ProductController object * @param $model an instance of the ProductModel class * @param $getvars the incoming HTTP GET method variables */ function ProductController (&$model,$getvars=null) { ProductView::ProductView($model); $this->header(); switch ( $getvars[’view’] ) { case "product": $this->productItem($getvars[’id’]); break; default: if ( empty ($getvars[’rownum’]) ) { $this->productTable(); } else { $this->productTable($getvars[’rownum’]); } break; } $this->footer(); } } ?> |
相关文章推荐
- 【转】php实现MVC
- 【转】PHP实现MVC开发: 一个简单的MVC
- 简述MVC思想与PHP如何实现MVC
- 什么是MVC以及PHP如何实现MVC .
- php mvc开发系列教程第三节 Controller 类实现
- PHP实现MVC开发: 一个简单的MVC
- [转]PHP实现MVC开发: 一个简单的MVC
- PHP实现MVC开发: 一个简单的MVC
- 用PHP开始你的MVC (四)实现View层
- PHP实现MVC开发得最简单的方法——单点入口
- PHP实现MVC开发: 一个简单的MVC
- 用PHP开始你的MVC(三)实现你的Model层
- 简述MVC思想与PHP如何实现MVC
- php实现MVC
- PHP (20140523)PHP实现MVC开发: 一个简单的MVC
- 用PHP开始你的MVC (四)实现View层
- 浅解用PHP实现MVC .
- php简单实现MVC
- 浅解用PHP实现MVC
- PHP的MVC实现(1)