首页 >后端开发 >PHP问题 >php控制器是什么意思

php控制器是什么意思

藏色散人
藏色散人原创
2021-11-26 10:44:483160浏览

php控制器就是指MVC中的C,即Controller,其控制器的作用通常是获取模型(Model)中数据并交给视图(View)去显示。

php控制器是什么意思

本文操作环境:Windows7系统、PHP7.1、Dell G3。

php控制器是什么意思?

PHP中控制器(Controller)层的实现

控制器(Controller)的作用通常是在获取模型(Model)中数据并交给视图(View)去显示,那开发中我们应该如何去写呢?

1.创建Controller的类文件,我这里文件名为MatchController.class.php

<?php
/**
 * 比赛操作相关控制器功能类 
 */
class MatchController{
    /**
     * 比赛列表操作
     */
    public function listAction(){
        header(&#39;Content-Type: text/html;charset=utf-8&#39;);
        //实例化相应的模型类对象,调用某个方法,实现固定功能
        // require &#39;./MatchModel.class.php&#39;;
        // $m_match = new MatchModel();
        //通过工厂获得对象
        require &#39;./Factory.class.php&#39;;
        $m_match = Factory::M(&#39;MatchModel&#39;);
        $match_list = $m_match->getList();
        // $m_match2 = Factory::M('MatchModel');

        // 载入负责显示的html文件
        require './template/match_list_v.html';
    }
    /**
     * 比赛删除
     */
    public function removeAction(){
        
    }
}

2.在入口文件中实例化控制器对象(前端控制器或请求分发器),文件名index.php

为了能让index.php去执行我们要操作的动作,应该传给index.php一些参数,来告诉入口文件怎么做。
假如我们要在比赛列表(比赛Controller)中删除一条比赛信息,可以这样传参给index.php:

index.php?c=match&a=remove&id=N

相应的HTML文件应该这样写:

387bedc8285123f0883db1bdd670145.png

通过点击事件给index.php传参

index.php:

<?php
//动作
$default_action = &#39;list&#39;;
$a = isset($_GET[&#39;a&#39;])?$_GET[&#39;a&#39;]:$default_action;

//实例化控制器类
require &#39;./MatchController.class.php&#39;;
//实例化
$controller = new MatchController();
//调用方法
$action_name = $a.&#39;Action&#39;;
$controller -> $action_name();//可变方法

a8a15bb2c557597de52e96747d17efe.png

推荐学习:《PHP视频教程

以上是php控制器是什么意思的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn