写你自己的MVC框架
参考:
1. http://anantgarg.com/2009/03/13/write-your-own-php-mvc-framework-part-1/
2. http://anantgarg.com/2009/03/30/write-your-own-php-mvc-framework-part-2/
实例:
Controller.php
<?phpinclude 'Model.php';
include 'View.php';class Controller{private $model = '';private $view = '';public function Controller(){$this->model = new Model();$this->view = new View();}public function doAction($method = 'defaultMethod', $params = ''){if(empty($method)){$this->defaultMethod();}else if(method_exists($this, $method)){call_user_func(array($this, $method), $params);}else{ $this->noexisting_method();}}public function link_page($name = ''){$links = $this->model->getLinks();$this->view->display($links);$result = $this->model->getResult($name);$this->view->display($result);}public function defaultMethod(){$this->br();echo 'This is the default method. ';}public function nonexisting_method(){$this->br();echo 'This is the noexisting method. ';}public function br(){echo '<br />';}
}$controller = new Controller();
$controller->doAction('link_page', 'b');
$controller->doAction();
Model.php
<?phpclass Model
{private $database = array('a' => 'hello world', 'b' => 'ok well done', 'c' => 'good bye');//@TODO connect the database//run the query and get the resultpublic function getResult($name){if(empty($name)){ return false; }if(in_array($name, array_keys($this->database))){ return $this->database[$name]; }}public function getLinks(){$links = 'Link A ';$links .= 'Link B ';$links .= 'Link C ';return $links;}
}
View.php
<?phpclass View
{public function display($output){//ob_start();echo $output;}
}
写你自己的MVC框架相关推荐
- 自己动手写一个简单的MVC框架(第二版)
一.ASP.NET MVC核心机制回顾 在ASP.NET MVC中,最核心的当属"路由系统",而路由系统的核心则源于一个强大的System.Web.Routing.dll组件. 在 ...
- 仿照源码,手写一个自定义 Spring MVC 框架
毫无疑问,Spring 框架目前已经成为 Java 开发的行业标准,Spring MVC 作为其 Web 解决方案,是所有 Java 开发者都必须掌握的基本技能,理解其底层原理,才能更好地应用它进行实 ...
- 学写一个 Java Web MVC 框架(一)
当前我们介绍的是一个简单的MVC,用8个类即实现完整Spring MVC核心功能,外加其他实用的小功能.它是怎么实现的呢?让我们来一探究竟! 源码在:https://gitee.com/sp42_ad ...
- 学写一个 Java Web MVC 框架(四)
访问请求处理 当客户端发送一个请求,被自定义的过滤器MvcDispatcher拦截,解析请求地址和参数对象跳转到一个控制器的方法中,然后执行进行逻辑处理后返回响应内容给MvcDispatcher输出, ...
- 自己动手写一个简单的MVC框架(第一版)
一.MVC概念回顾 路由(Route).控制器(Controller).行为(Action).模型(Model).视图(View) 用一句简单地话来描述以上关键点: 路由(Route)就相当于一个公司 ...
- 写自己的ASP.NET MVC框架(上)
开始 ASP.NET程序的几种开发方式 介绍我的MVC框架 我的MVC框架设计架构 回忆以往AJAX的实现方式 MyMVC中实现AJAX的方式 如何使用MyMVC框架中的AJAX功能 配置MyM ...
- 开发自己的PHP MVC框架(一)
这个教程能够使大家掌握用mvc模式开发php应用的基本概念.此教程分为三个部分.如今这篇是第一部分. 如今市面上有非常多流行的框架供大家使用.可是我们也能够自己动手开发一个mvc框架.採用mvc模式能 ...
- 使用MVC框架开发网站(一)
概述 本章您将学会: 1.MVC的概念及使用 2.MVC与ASP.NET的区别 3.路由和URL导向 4.控制器和视图 5.模型与模型状态 6.过滤器 7--. 第1章_MVC与ASP.NET的区别 ...
- 学习如何写PHP MVC框架(1) -- 路由
说到PHP开发web,自然离不开开发框架,开发框架为我们提供了灵活的开发方式,MVC层分离,业务解耦等... 第一篇先来简单点的,说说MVC框架的路由功能... 一般的单入口框架路由都是这样的结构: ...
最新文章
- SD-WAN技术的详细解析
- IE6 PNG透明终极解决方案
- 输出halloword
- 学生社团管理系统PHP源码,学生社团管理系统 附带源码
- ai怎么做波普风圆点_AI绘画教程,绘画波普艺术风格人像
- 大学物理公式和名词整理
- C语言编程题必须运行吗,全国计算机二级c语言的的操作题一定要运行吗?
- react native 面试题
- 关于sqlserver远程连接创建后报错小结
- 计算机一级基础及msoffice应用,全国计算机等级考试教程一级计算机基础及MS Office应用...
- JS面向对象——OOP
- HyperLedger-fabric V0.6 for CentOS7.2开发环境搭建
- 薅羊毛 | Python 自动化带你轻松赚钱
- 沧小海深入剖析xilinx的GTP/GTX核,掌握高速串行收发机制——第一章 前言闲谈
- 少年你骨骼精奇?AI现在可以帮你看一看了
- RNA-seq + 下游分析:一条龙代码
- MySQL笔记 —— jdbc工具类(网站的修改密码,注册账号,注销账号功能)
- 错误信息was not declared in this scope
- 英特尔傲腾,给内存和存储间加点“料”
- 博智云书 | 建筑工程文档管理好帮手
热门文章
- python编码转换中文_python3如何中文转换编码?
- Le-net网络总结
- opencv学习笔记2
- pyqt打包成linux可执行程序,PyQtopencv图像处理(5):python程序打包成可执行文件...
- opencv 扩大区域_python-----opencv图像边界扩充
- 服务器被bash服务占满_用bash脚本自动下载ftp服务器文件
- 3-3HDFS中文件的读写操作
- height:calc(100% - 10px)的用法(垂直居中) - 布局篇
- 本地运行vue.js项目,如何更改调试的默认端口?
- python计算分段函数_Python练习题2.2计算分段函数