热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php获取控制器名字,thinkphp5获取所有控制器的名称和方法

publicfunctionceshi(){获取所有控制器$controllersgetControllers(..applicationadmincontroller);结果:a

public function ceshi()

{

//获取所有控制器

$controllers = getControllers('../application/admin/controller');

//结果:

// array (size=13)

// 0 => string 'Admin' (length=5)

// 1 => string 'Article' (length=7)

// 2 => string 'Config' (length=6)

// 3 => string 'Goods' (length=5)

// 4 => string 'Index' (length=5)

// 5 => string 'Login' (length=5)

// 6 => string 'Menu' (length=4)

// 7 => string 'Mysql' (length=5)

// 8 => string 'Order' (length=5)

// 9 => string 'Other' (length=5)

// 10 => string 'Upload' (length=6)

// 11 => string 'User' (length=4)

// 12 => string 'Wechat' (length=6)

//下面是获取Index控制中你定义的方法,在mobadmin的应用场景中$control由前端传入,这样就能够达到我选择某个一个控制器的时候,就会输出这个控制中定义的方法。

$control = 'Index';

$actions = getActions('app\admin\controller' . '\\' . $control);

//结果:

// array (size=3)

// 0 => string 'index' (length=5)

// 1 => string 'welcome' (length=7)

// 2 => string 'ceshi' (length=5)

//系统中所有控制的方法怎么获取呢?遍历所有控制器就可以。

$controllers = getControllers('../application/admin/controller');

$actionsAll = [];

foreach( $controllers as $key=>$value) {

$actions[$value] = get_class_methods('app\admin\controller' . '\\' . $value);

}

//结果:

// 'Admin' =>

// array (size=15)

// 0 => string '__construct' (length=11)

// 1 => string '_initialize' (length=11)

// 2 => string '_empty' (length=6)

// 3 => string 'beforeAction' (length=12)

// 4 => string 'fetch' (length=5)

// 5 => string 'display' (length=7)

// 6 => string 'assign' (length=6)

// 7 => string 'engine' (length=6)

// 8 => string 'validateFailException' (length=21)

// 9 => string 'validate' (length=8)

// 10 => string 'success' (length=7)

// 11 => string 'error' (length=5)

// 12 => string 'result' (length=6)

// 13 => string 'redirect' (length=8)

// 14 => string 'getResponseType' (length=15)

// 'Article' =>

// array (size=18)

// 0 => string 'index' (length=5)

// 1 => string 'category' (length=8)

// 2 => string 'comment' (length=7)

// 3 => string '__construct' (length=11)

// 4 => string '_initialize' (length=11)

// 5 => string '_empty' (length=6)

// 6 => string 'beforeAction' (length=12)

// 7 => string 'fetch' (length=5)

// 8 => string 'display' (length=7)

// 9 => string 'assign' (length=6)

// 10 => string 'engine' (length=6)

// 11 => string 'validateFailException' (length=21)

// 12 => string 'validate' (length=8)

// 13 => string 'success' (length=7)

// 14 => string 'error' (length=5)

// 15 => string 'result' (length=6)

// 16 => string 'redirect' (length=8)

// 17 => string 'getResponseType' (length=15)

}



推荐阅读
  • 海马s5近光灯能否直接更换为H7?
    本文主要介绍了海马s5车型的近光灯是否可以直接更换为H7灯泡,并提供了完整的教程下载地址。此外,还详细讲解了DSP功能函数中的数据拷贝、数据填充和浮点数转换为定点数的相关内容。 ... [详细]
  • React项目中运用React技巧解决实际问题的总结
    本文总结了在React项目中如何运用React技巧解决一些实际问题,包括取消请求和页面卸载的关联,利用useEffect和AbortController等技术实现请求的取消。文章中的代码是简化后的例子,但思想是相通的。 ... [详细]
  • 本文介绍了一个Magento模块,其主要功能是实现前台用户利用表单给管理员发送邮件。通过阅读该模块的代码,可以了解到一些有关Magento的细节,例如如何获取系统标签id、如何使用Magento默认的提示信息以及如何使用smtp服务等。文章还提到了安装SMTP Pro插件的方法,并给出了前台页面的代码示例。 ... [详细]
  • vue使用
    关键词: ... [详细]
  • IhaveconfiguredanactionforaremotenotificationwhenitarrivestomyiOsapp.Iwanttwodiff ... [详细]
  • Java序列化对象传给PHP的方法及原理解析
    本文介绍了Java序列化对象传给PHP的方法及原理,包括Java对象传递的方式、序列化的方式、PHP中的序列化用法介绍、Java是否能反序列化PHP的数据、Java序列化的原理以及解决Java序列化中的问题。同时还解释了序列化的概念和作用,以及代码执行序列化所需要的权限。最后指出,序列化会将对象实例的所有字段都进行序列化,使得数据能够被表示为实例的序列化数据,但只有能够解释该格式的代码才能够确定数据的内容。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 解决VS写C#项目导入MySQL数据源报错“You have a usable connection already”问题的正确方法
    本文介绍了在VS写C#项目导入MySQL数据源时出现报错“You have a usable connection already”的问题,并给出了正确的解决方法。详细描述了问题的出现情况和报错信息,并提供了解决该问题的步骤和注意事项。 ... [详细]
  • 本文讨论了在手机移动端如何使用HTML5和JavaScript实现视频上传并压缩视频质量,或者降低手机摄像头拍摄质量的问题。作者指出HTML5和JavaScript无法直接压缩视频,只能通过将视频传送到服务器端由后端进行压缩。对于控制相机拍摄质量,只有使用JAVA编写Android客户端才能实现压缩。此外,作者还解释了在交作业时使用zip格式压缩包导致CSS文件和图片音乐丢失的原因,并提供了解决方法。最后,作者还介绍了一个用于处理图片的类,可以实现图片剪裁处理和生成缩略图的功能。 ... [详细]
  • Todayatworksomeonetriedtoconvincemethat:今天在工作中有人试图说服我:{$obj->getTableInfo()}isfine ... [详细]
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • 电话号码的字母组合解题思路和代码示例
    本文介绍了力扣题目《电话号码的字母组合》的解题思路和代码示例。通过使用哈希表和递归求解的方法,可以将给定的电话号码转换为对应的字母组合。详细的解题思路和代码示例可以帮助读者更好地理解和实现该题目。 ... [详细]
  • SpringBoot简单日志配置
     在生产环境中,只打印error级别的错误,在测试环境中,可以调成debugapplication.properties文件##默认使用logbacklogging.level.r ... [详细]
  • 本文讨论了在ASP中创建RazorFunctions.cshtml文件时出现的问题,即ASP.global_asax不存在于命名空间ASP中。文章提供了解决该问题的代码示例,并详细解释了代码中涉及的关键概念,如HttpContext、Request和RouteData等。通过阅读本文,读者可以了解如何解决该问题并理解相关的ASP概念。 ... [详细]
  • 【重识云原生】第四章云网络4.8.3.2节——Open vSwitch工作原理详解
    2OpenvSwitch架构2.1OVS整体架构ovs-vswitchd:守护程序,实现交换功能,和Linux内核兼容模块一起,实现基于流的交换flow-basedswitchin ... [详细]
author-avatar
昧凉生丶楚_139
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有