MayFish PHP的MVC架构的开发框架

框架工作流程:
加载框架文件》加载参数设置对象》进行初始化设置》加载项目设置参数》获取控制器及控制器方法》执行控制器事件

使用实例为:


代码如下:

<?php
class DefaultController extends AppController
{
protected $components = array('smarty');
/** 默认事件(方法) */
public function index()
{
$db_test = M('members'); //加载并实例化一个模型
/** 添加数据 */
$data = array(
'title' => '写入测试',
'body' => '写入的内容',
);
$result = $db_test->create($data);
if(FALSE != $result)
{
dump("<p><strong>exampel 1:</strong><br />数据写入成功!</p>");
}
/** 添加多条数据 */
dump("<p><strong>exampel 2:</strong><br />");
$data = array(
array('title'=>'数据1', 'body'=>'内容1'),
array('title'=>'数据2', 'body'=>'内容2'),
array('title'=>'数据3', 'body'=>'内容3'),
array('title'=>'数据4', 'body'=>'内容4'),
array('title'=>'数据5', 'body'=>'内容5'),
);
foreach($data as $item)
{
$result = $db_test->create($item);
if(FALSE != $result)
{
dump("数据<strong>".$item['title']."</strong>写入成功!<br />");
}
}
dump("</p>");
/** 更新数据 */
$data = array('title'=>'修改数据标题', 'body'=>'修改数据内容');
$result = $db_test->where(array('id'=>3))->update($data);
if(FALSE != $result)
{
dump("<p><strong>exampel 3:</strong><br />数据更新成功!</p>");
}
/** 删除数据 */
$result = $db_test->where("id=5")->remove();
if(FALSE != $result)
{
dump("<p><strong>exampel 3:</strong><br />数据删除成功!</p>");
}
/** 执行数据查询,使用连贯的操作符 */
$db_test->where(array('id'=>12, 'action'=>1))
->order("`id` DESC")
->fields("id,name,action")
->findAll();
$this->shownav();
}
//图片处理事件
public function image()
{
$file = Configure::read('app_path').'/yagas/K750c_small_06.jpg';
$im = M('SYS', 'image'); //加载并实例化一个系统模型
$im->th_width = 200;
$im->th_height = 150;
$im->thumb($file, null, false);
}
/** 另一个控制器事件 */
public function admin()
{
dump($this);
$this->shownav();
}
/** 另一个控制器事件 */
public function info()
{
$this->shownav();
phpinfo();
}
/** 这是一个内部事件,无法从浏览器地址进行访问 */
private function shownav()
{
echo '<a href="/">访问默认事件</a> | <a href="?a=admin">访问事件 admin</a> | <a href="?a=info">访问事件 info</a>';
}
}
?>


单个空间多个站点的实现


代码如下:

<?php
header('Content-type:text/html; charset=utf-8');
include_once('./MayFish/init.php'); //加载MFS框架

$domain = $_SERVER['HTTP_HOST'];

switch($domain) {
case 's1.xinxi169.com.cn':
Configure::write('app_name', 'app');
Configure::write('app_path', dirname(__FILE__).'/app');
break;

case 'www.aike8.cn':
case 'aike8.cn':
Configure::write('app_name', 'aike8');
Configure::write('app_path', dirname(__FILE__).'/aike8');
break;
}

$app = new application();
$app->run();
?>

下载地址 http://www.jb51.net/codes/20169.html

(0)

相关推荐

  • 手把手编写PHP框架 深入了解MVC运行流程

    1 什么是MVC MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller). PHP中MVC模式也称Web MVC,从上世纪70年代进化而来.MVC的目的是实现一种动态的程序设计,便于后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能.除 此之外,此模式通过对复杂度的简化,使程序结构更加直观.软件系统通过对自身基本部份分离的同时,也赋予了各个基本部分应有的

  • php实现简单的MVC框架实例

    本文实例讲述了php实现简单的MVC框架.分享给大家供大家参考.具体如下: 在开始之前需要知道的知识 1.php基础知识 2.单一入口, 不知道的可以看看这里 (http://www.jb51.net/article/72621.htm) 具备以上两点, 那我们就可以开始啦. 哈哈! 先来说一下程序的执行流程 首先有个入口文件, 然后初始化一些程序, 之后根据请求调用不同的类和方法 首先我们弄一个入口文件 Index.php 来看看代码 <?php require "Init.php&qu

  • php打造属于自己的MVC框架

    一.文件结构 建立3个文件夹 controller文件夹存放控制器文件 view文件夹存放视图文件 model文件夹存放数据文件 建立1个index.php 作为唯一入口 二.控制器 我们在controller文件夹下建立一个democontroller.php文件,文件内容如下 复制代码 代码如下: <?php class DemoController { function index() { echo('hello world'); } } /* End of file democontro

  • PHP简单的MVC框架实现方法

    在PHP中使用MVC越来越流行了,特别是在一些开源的框架当中. 1.概述 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑.数据.界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑.MVC被独特的发展起来用于映射传统的输入.处理和输出功能在一个逻辑的图形化用户界面的结构中. 2.代码结构 3.代码实现 <?ph

  • 用 Composer构建自己的 PHP 框架之设计 MVC

    回顾 在上一篇教程中,我们使用 codingbean/macaw 这个 Composer 包构建了两条简单路由,第一条是响应 GET '/fuck' 的,另一条会 hold 住所有请求.其实对 PHP 框架来说,有了路由就有了一切.所以接下来我们要做的事情就是让 MFFC 框架更加规范,更加丰满. 这就牵扯到了 PHP 框架另外的价值:确立开发规范以便于`多人协作`,使用 ORM`.`模板引擎 等工具以`提高开发效率`. 正式开始规划文件夹 新建 MFFC/app 文件夹,在 app 中创建 c

  • 基于PHP Web开发MVC框架的Smarty使用说明

    一.Smarty简明教程 1.安装演示 下载最新版本的Smarty-3.1.12,然后解压下载的文件.接下来演示Smarty自带的demo例子. (1)下载地址:http://www.smarty.net/download(2)在你的WEB服务器根目录下建立新目录,这里我在/var/www下创建yqting/目录,然后将解压之后的目录中的demo/和libs/目录复制到/var/www/yqting/目录下. (3)这里要特别注意demo/目录下cache/和template_c/两个目录,一定

  • PHP MVC框架路由学习笔记

    提到PHP开发web,自然离不开开发框架,开发框架为我们提供了灵活的开发方式,MVC层分离,业务解耦等... 第一篇先来简单点的,说说MVC框架的路由功能... 一般的单入口框架路由都是这样的结构: domain/index.php/classname/functionname/var1/var2 这里的index.php 就被称为入口文件...对于服务器而言,你这里访问的就只有index.php 后面调用的controller 和里面的方法,甚至传值都是在框架内部基于PHP层面实现的. Tal

  • PHP MVC框架skymvc支持多文件上传

    本文实例为大家分享了skymvc实现文件上传的具体代码,供大家参考,具体内容如下 1.代码upload.ctrl.php <?php class uploadControl extends skymvc{ public function __construct(){ parent::__construct(); } public function onDefault(){ $this->smarty->display("upload/default.html"); }

  • PHP的MVC模式实现原理分析(一相简单的MVC框架范例)

    他们的工作原理大家应该也比较感兴趣,下面我说说一个mvc框架长什么样. 路由机制 在互联网我们都是通过url提供服务,因此不同的url有不同的服务.用户访问不同的页面也就获得了不同的服务.那么我们的服务是如何通过url来区分不同的服务呢. 我们的web程序就要通过url寻找到不同的文件,进行不同的业务逻辑处理.我们的路由机制就是根据url,寻找到对应的controller,和action,然后由action进行具体的业务逻辑处理. 一个简单的controller 复制代码 代码如下: //定义一

  • php实现最简单的MVC框架实例教程

    本文以一个实例的形式讲述了PHP实现MVC框架的过程,比较浅显易懂.现分享给大家供大家参考之用.具体分析如下: 首先,在学习一个框架之前,基本上我们都需要知道什么是mvc,即model-view-control,说白了就是数据控制以及页面的分离实现,mvc就是这样应运而生的,mvc分为了三个层次,而且三个层次各司其职,互不干扰,首先简单介绍下,各个层次:view即是视图,也就是web页面,control即是控制器 向系统发出指令的工具,model 简单说是从数据库中取出数据进行处理. MVC的工

随机推荐