• 【ThinkPHP框架3.2版本学习总结】二、控制器


    1. 控制器的定义

    2. URL模式

    ThinkPHP支持四种URL模式,可以通过设置URL_MODEL参数来定义

    (1)普通模式(URL_Model=>0)

    http://域名/index.php?m=模块&c=控制器&a=方法&参数列表
    http://www.tp.com/index.php?m=Home&c=Index&a=index&id=1

    (2)PATHINFO模式(URL_Model=>1)

    http://域名/index.php/模块/控制器/方法名/参数列表
    http://www.tp.com/index.php/Home/Index/index

    (3)重写模式(URL_Model=>2)

    http://域名/模块/控制器/方法/参数列表
    http://www.tp.com/Home/Index/index

    注:如果要使用重写模式,需要如下配置

    ①httpd.conf配置文件中加载了mod_rewrite.so模块

    ②配置虚拟主机文件中AllowOverride None将None改为All

    ③把下面的内容保存为.htaccess文件放到入口文件的同级目录下

    (4)兼容模式(URL_Model=>3)

    http://域名/index.php?s=模块/控制器/方法/参数列表
    http://域名/index.php?s=Home/Index/index

    3. 空操作

    空操作是指系统在找不到指定的操作方法的时候,会定位到空操作(_empty)方法来执行,利用这个机制,我们可以实现错误页面和一些URL的优化。

    (1)实现错误页面

    (2)优化url参数

    4. 空控制器

    空控制器的概念是指当系统找不到指定的控制器名称的时候,系统会尝试定位空控制器(EmptyController),利用这个机制我们可以用来定制错误页面和进行URL的优化。

    (1)定制错误页面

    (2)优化url链接

    5. URL大小写

    6. 页面跳转

    success和error方法的第一个参数表示提示信息,第二个参数表示跳转地址,第三个参数是跳转时间(单位为秒),默认的等待时间success方法是1秒,error方法是3秒。

    默认情况下,系统会自动调用系统自定义的两个模板

    7. 页面重定向

    $this->redirect('重定向url地址','传递的参数',跳转时停留时间,'提示信息');

    如果你仅仅是想重定向要一个指定的URL地址,而不是到某个模块的操作方法,可以直接使用redirect函数重定向。

  • 相关阅读:
    Ubuntu18.04可执行文件运行提示No such file or directory
    Linux gcc(ar命令)打包库到另一个库中的另外一种方法
    干干净净的grep
    C语言里面和时间有关的函数
    Ubuntu上安装tftp服务
    因为新冠,宅家2周,折腾了一下电视盒子。
    批量处理文件的Python程序
    Windows 10中使用VirtualBox
    重采样Resample 的一些研究记录。
    微信公众号接入第三方服务器,设置自动回复、关键回复、自定义菜单,配置及开发流程
  • 原文地址:https://www.cnblogs.com/chenjiacheng/p/6522588.html
Copyright © 2020-2023  润新知