学编程 ❀(๑╯◡╰๑)❀ 就上soxunxi.cn!这里有CMS,CSS,NET,PHP,Linux,HTML,JAVA,MySQL,Python等教程.
当前位置: PHP > PHP——MVC形式解说与实例【php教程】,MVC

一、 MVC情势流程图

二、MVC观点

(1)作用

MVC包含控制器(Controller),模子(Model),视图(View)。

控制器的作用是挪用模子和 视图,将模子发生的数据传递给视图,并让视图去显现

模子的作用是猎取数据并处置惩罚返回数据

视图的作用是将获得的数据举行美化,并向用户终端输出

(2)实行历程

1. 阅读者 -> 挪用控制器,发出指令

2. 控制器 -> 按指令挑选适宜的模子

3. 模子 -> 按指令取数据

4. 控制器 -> 按指令选视图

5 . 视图 -> 把取到的数据展现出来

三、简朴的MVC实例

(1)目次计划

(2)编写类文件
1. testController.class.php 控制器类文件

定名划定规矩:test(名字)Controller(控制器文件).class.php ( 类文件 )

<!-- 
 起首实例化控制器对象,并挪用指令要领,
 要领内里实例化模子对象,挪用取数据要领
 并实例化视图对象,挪用展现要领
  -->
  <!-- 
 控制器的要领没有参数,而其他的就有参数
   -->
<?php
    // 类名和文件名雷同 
    class testController{
        function show(){
            
            $testModel = new testModel();//按指令挑选一个模子
            $data = $testModel -> get();//模子根据指令取数据
            //按指令挑选视图 实例化一个view的对象
            $testView  = new testView();
            //把取到的数据按用户的模样显现出来
            $testView -> display($data);
        }
    }
?>

2. testModel.class.php 模子类文件
定名划定规矩:test(模子文件名称 )Model( 模子文件).class.php 类文件

<?php 
    class testModel{
        //猎取数据
        function get(){
            return "hello world";
        }
    }
?>

3. testView.class.php 视图类文件

<?php 
    class testView{
        //展现数据
        function display($data){
            echo $data;
        }
    }
?>

4. 单一进口文件

让他来挪用控制器,而控制器去挪用模子和视图

<?php
//引入类文件
require_once('/libs/Controller/testController.class.php');
require_once('/libs/Model/testModel.class.php');
require_once('/libs/View/testView.class.php');
 
//类的实例化
$testController = new testController();//对象赋值给变量
$testController->show();//挪用要领
?>

5.运转效果

四、简朴的MVC实例革新----要领封装

1. 封装一个实例化控制器等的对象和挪用要领的函数

<?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.'();');//把字符串转换为可实行的php语句
    }
    //封装一个实例化模子的对象和挪用要领的函数
    function M($name){
        require_once('/libs/Model/'.$name.'Model.class.php');
        //$testModel = new testModel();
        eval('$obj = new '.$name.'Model();');//实例化
        return $obj;
    }
 
    //封装一个实例化视图的对象和挪用要领的函数
    function V($name){
        require_once('/libs/View/'.$name.'View.class.php');
            //$testView  = new testView();
            eval('$obj = new '.$name.'View();');
            return $obj;
    }
 
    //为了安全性 ,过滤函数
    //addslashes对’,字符举行转义
    //get_magic_quotes_gpc()当前魔法标记的翻开状况,翻开返回true,
    function daddslashes($str){
        return (!get_magic_quotes_gpc() )? addslashes($str) : $str;
    }
?>

2.从新编写进口文件index.php

阅读器url接见情势 http://......index.php?controller=控制器名&method=要领名

<?php 
require_once('function.php');
 
//许可接见的控制器名和要领名的数组
$controllerAllow=array('test','index');
$methodAllow =array('test','index','show');
//用get体式格局吸收url中的参数
//过滤输入不法字符  并推断是不是在数组里
$controller = in_array($_GET['controller'],$controllerAllow )? daddslashes($_GET['controller']) :'index' ;
$method = in_array($_GET['method'],$methodAllow) ? daddslashes($_GET['method']) :'index';
//挪用控制器和实行要领
C($controller,$method);
 
?>

3.运转效果

阅读器接见 http://localhost:8080/MVC/index.php?controller=test&method=show 显现hello world

想相识更多PHP相干题目请接见ki4网:PHP视频教程

以上就是PHP——MVC情势解说与实例的细致内容,更多请关注ki4网别的相干文章!

「梦想一旦被付诸行动,就会变得神圣,如果觉得我的文章对您有用,请帮助本站成长」

分享到:
赞(0) 打赏

支付宝扫一扫打赏

微信扫一扫打赏

标签:

上一篇:

下一篇:

相关推荐

0 条评论关于"PHP——MVC形式解说与实例【php教程】,MVC"

最新评论

    暂无留言哦~~

博客简介

看古风美女插画Cos小姐姐,素材合集图集打包下载:炫龙网,好看二次元插画应有尽有,唯美小姐姐等你来。

友情链接

他们同样是一群网虫,却不是每天泡在网上游走在淘宝和网游之间、刷着本来就快要透支的信用卡。他们或许没有踏出国门一步,但同学却不局限在一国一校,而是遍及全球!申请交换友链

服务热线:
 

 QQ在线交流

 旺旺在线