控制器操作【3】

五.请求类型 ThinkPHP 提供了一组常量来判断当前请求是否是 GET、POST 等。通过判断请求处理不同的业务逻辑。 常量 含义 IS_GET 判断是否 GET 提交请求 IS_POST 判断是否 POST 提交请求 IS_PUT 判断是否 PUT 提交请求 IS_DELTE 判断是否 DELETE 提交请求 IS_AJAX 判断是否 AJAX 提交请求 //判断是否GET请求 if (IS_GET) { echo '是GET请求'; } else { echo '不是GET请求'; }

六.空操作 空操作是指系统在找不到请求的操作方法时,会定位到空操作(_empty)方法来执行,利用这个机制,我们可以实现错误页面和一些 URL 的优化。 //如果没有相关方法则执行 public function _empty($name) { echo '找不到方法:'.$name; } 七.空控制器 所谓空控制器, 就是请求不到指定控制器时, 调用一个专门的空控制器。 利用这个机制,我们可以实现错误页面和一些 URL 的优化。 //如果没有相关控制器则执行 class EmptyController extends Controller { public function index() { echo '找不到控制器:'.CONTROLLER_NAME;

} } 八.操作绑定到类 ThinkPHP 提供了把每个操作方法定位到一个类的功能,即每个把层次分的更加细腻。 //设置操作绑定到类 'ACTION_BIND_CLASS'=>True,

然后,在 Controller 目录下建立 User 目录,在 User 目录建立 index.class.php, 再建立 test.class.php。 //index.class.php namespace Home\Controller\User; use Think\Controller; class index extends Controller { public function run() { echo 'User模块下的index类'; } } //test.class.php namespace Home\Controller\User; use Think\Controller; class test extends Controller { public function run() { echo 'User模块下的test类'; } } 浏览器分别访问: http://localhost/demo39/User/ http://localhost/demo39/User/test/

//前置后置方法 public function _before_run() { echo 'before_'.ACTION_NAME; } public function _after_run() { echo 'after_'.ACTION_NAME; } 空方法,在目录里建立一个_empty.class.php

//空方法 class _empty extends Controller { public function run() { echo '找不到'.ACTION_NAME.'方法'; } } 空控制器,可以创建一个目录_empty,然后建立 index.class.php //空控制器 namespace Home\Controller\_empty; use Think\Controller; class index extends Controller { public function run() { echo '找不到'.CONTROLLER_NAME.'控制器的'.ACTION_NAME.'方法'; } }

本文分享自微信公众号 - Tech爬虫(php_pachong),作者:爬虫

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-03-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 利用thinkphp实现分页

    通常在数据查询后都会对数据集进行分页操作,ThinkPHP也提供了分页类来对数据分页提供支持。分页类目录:/Thinkphp/Library/Org/Bjy/P...

    公众号php_pachong
  • ThinkPHP控制器-精华总结

    TP3.23对控制器做了更加细致的分层,除了默认的Controller层,还可以自定义事件控制层Event。

    公众号php_pachong
  • Thinkphp的Common模块作用

    Common模块和普通模块一样,可以添加控制器、模型和视图,并且支持多层,但不能直接访问,只能继承,其中模型层 可以作为公用模型,在D方法实例化中调用。D...

    公众号php_pachong
  • 死磕 Java集合之ArrayList源码分析

    ArrayList是一种以数组实现的List,与数组相比,它具有动态扩展的能力,因此也可称之为动态数组。

    彤哥
  • 死磕 Java集合之ArrayList源码分析

    ArrayList是一种以数组实现的List,与数组相比,它具有动态扩展的能力,因此也可称之为动态数组。

    zhisheng
  • Java集合框架源码解析之ArrayList

    叶应是叶
  • ArrayList 源码分析

    ArrayList 源码分析 1. 在阅读源码时做了大量的注释,并且做了一些测试分析源码内的执行流程,由于博客篇幅有限,并且代码阅读起来没有 IDE 方便,所...

    lwen
  • ArrayList源码解析(基于Java8)扩容删除

    JavaEdge
  • 从平等化学习、个性化教学、智慧化校园管理3个维度,助力教育公平发展

    12月3-5日,以“融合·创新 让教育点亮每个人”为主题的“GES 2018未来教育大会”在北京召开。腾讯高级执行副总裁汤道生出席并发表致辞《科技助力教育公平发...

    腾讯智慧教育
  • 高通加大5G应用力度:发布又一款手机芯片,还推出机器人和无人机5G系统

    今天,高通推出了一个可用于机器人和无人机的5G系统——RB5。而就在昨天,刚发布又一款手机芯片骁龙690。

    量子位

扫码关注云+社区

领取腾讯云代金券