首页 > php教程 > php手册 > PHP之简单实现MVC框架,phpmvc框架

PHP之简单实现MVC框架,phpmvc框架

WBOY
发布: 2016-06-13 08:50:11
原创
1090 人浏览过

PHP之简单实现MVC框架,phpmvc框架

1.概述

  MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

2.代码结构

3.代码实现

<?php
        //function.php  
	//控制器调用函数
	function C($name, $method){
		require_once('libs/Controller/'.$name.'Controller.class.php');
		//$testController = new testController();
		//$testController->show();
		eval('$obj = new '.$name.'Controller(); $obj->'.$method.'();');
	}

	//模型调用函数
	function M($name){
		require_once('libs/Model/'.$name.'Model.class.php');
		eval('$obj = new '.$name.'Model();');
		return $obj;
	}

	//视图调用函数
	function V($name){
		require_once('libs/View/'.$name.'View.class.php');
		eval('$obj = new '.$name.'View();');
		return $obj;
	}

	//过滤非法值
	function daddslashes($str){
		return (!get_magic_quotes_gpc())?addslashes($str):$str;
	}
?>
登录后复制

<?php
//test.php
/*
第一步 浏览者 -> 调用控制器,对它发出指令
第二步 控制器 -> 按指令选取一个合适的模型
第三步 模型 -> 按控制器指令取相应数据
第四步 控制器 -> 按指令选取相应视图
第五步 视图 -> 把第三步取到的数据按用户想要的样子显示出来
*/

require_once('View/testView.class.php');
require_once('Model/testModel.class.php');
require_once('Controller/testController.class.php');

$testController = new testController();
$testController->show();
?>
登录后复制

<?php
//testController.class.php
/*
控制器的作用是调用模型,并调用视图,将模型产生的数据传递给视图,并让相关视图去显示
*/
	class testController{
		function show(){
			/*$testModel = new testModel();
			$data = $testModel->get();
			$testView = new testView();
			$testView->display($data);*/
			$testModel = M('test');
			$data = $testModel->get();
			$testView = V('test');
			$testView->display($data);
		}
	}
?>
登录后复制

<?php
//testModel.class.php
/*
模型的作用是获取数据并处理,返回数据
*/
	class testModel{
		function get(){
			return "hello world";
		}
	}
?>
登录后复制

<?php
//testView.class.php
/*
视图的作用是将获得的数据进行组织,美化等,并最终向用户终端输出
*/
	class testView{
		function display($data){
			echo $data;
		}
	}
?>
登录后复制

 运行结果:

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板