>[info] 在5.1版本中,大部分的助手函数都可以归结为一个函数`app()`,因为5.1全面采用容器管理类的实例,而`app()`函数又是容器的“管家”。

## 助手函数

系统为一些常用的操作方法封装了助手函数,便于使用,包含如下:

|助手函数|描述|

|---|---|

|abort|中断执行并发送HTTP状态码|

|action|调用控制器类的操作|

|app|快速获取容器中的实例 支持依赖注入|

|behavior|执行某个行为|

|bind|快速绑定对象实例|

|cache|缓存管理|

|call|调用反射执行callable 支持依赖注入|

|class_basename|获取类名(不包含命名空间)|

|class_uses_recursive|获取一个类里所有用到的trait|

|config|获取和设置配置参数|

|container|获取容器对象实例|

|controller|实例化控制器|

|cookie|Cookie管理|

|db|实例化数据库类|

|debug|调试时间和内存占用|

|dump|浏览器友好的变量输出|

|env|获取环境变量(`V5.1.3+`)|

|exception | 抛出异常处理|

|halt|变量调试输出并中断执行|

|input|获取输入数据 支持默认值和过滤|

|json|JSON数据输出|

|jsonp|JSONP数据输出|

|lang|获取语言变量值|

|model|实例化Model|

|parse_name|字符串命名风格转换|

|redirect|重定向输出|

|request|实例化Request对象|

|response|实例化Response对象|

|route|注册路由规则(`V5.1.3+`)|

|session|Session管理|

|token|生成表单令牌输出|

|trace|记录日志信息|

|trait_uses_recursive|获取一个trait里所有引用到的trait|

|url|Url生成|

|validate|实例化验证器|

|view|渲染模板输出|

|widget|渲染输出Widget|

|xml|XML数据输出|

>[danger] 核心框架不依赖任何助手函数,系统只是加载了助手函数文件,而且你可以在应用的公共函数文件(模块公共函数文件中重写无效)中重写上面这些助手函数。

上面这些内置的系统助手函数大部分方法都可以通过`app`助手函数完成调用,以进行缓存操作为例。

~~~php

cache('name');

// 可以使用

app('cache')->get('name');

cache('name','value');

// 可以使用

app('cache')->set('name','value');

~~~

~~~

model('User');

可以使用

app()->model('User');

~~~

具体可以参考架构->容器和依赖注入。

> `V5.1.3+`版本开始,所有的助手函数都可以直接用于配置文件。

php 助手函数,助手函数 · ThinkPHP5.1完全开发手册 · 看云相关推荐

  1. 多语言php,多语言 · ThinkPHP5.0完全开发手册 · 看云

    ThinkPHP内置通过`\think\Lang`类提供多语言支持,如果你的应用涉及到国际化的支持,那么可以定义相关的语言包文件.任何字符串形式的输出,都可以定义语言常量. ## 开启和加载语言包 默 ...

  2. php控制器的作用,控制器定义 · ThinkPHP5.0完全开发手册 · 看云

    ThinkPHP V5.0的控制器定义比较灵活,可以无需继承任何的基础类,也可以继承官方封装的`\think\Controller`类或者其他的控制器类. ## 控制器定义 一个典型的控制器类定义如下 ...

  3. think php5目录结构,目录结构 · ThinkPHP5.1完全开发手册 · 看云

    ## 目录结构 >[info] 相对于`5.0`来说,`5.1`版本目录结构的主要变化是配置目录和路由定义目录独立出来,不再放入应用类库目录(并且不可更改). ~~~cmd www WEB部署目 ...

  4. think php上传图片,上传 · ThinkPHP5.0完全开发手册 · 看云

    ## 上传文件 `ThinkPHP5.0`对文件上传的支持更加简单. > 内置的上传只是上传到本地服务器,上传到远程或者第三方平台的话需要自己扩展. 假设表单代码如下: ~~~ ~~~ 然后在控 ...

  5. php 实现域名路由器,域名路由 · ThinkPHP5.0完全开发手册 · 看云

    ThinkPHP支持完整域名.子域名和IP部署的路由和绑定功能,同时还可以起到简化URL的作用. 要启用域名部署路由功能,首先需要开启: ~~~ 'url_domain_deploy' => t ...

  6. php 获取路由参数,路由参数 · ThinkPHP5.0完全开发手册 · 看云

    ## 路由参数 路由参数是指可以设置一些路由匹配的条件参数,主要用于验证当前的路由规则是否有效,主要包括: |参数|说明| |---|---| |method|请求类型检测,支持多个请求类型| |ex ...

  7. 比较标签 php,比较标签 · ThinkPHP5.0完全开发手册 · 看云

    比较标签用于简单的变量比较,复杂的判断条件可以用if标签替换,比较标签是一组标签的集合,基本上用法都一致,如下: ~~~ {比较标签 name="变量" value="值 ...

  8. php 分布式数据库查询,分布式数据库 · Thinkphp5.0完全开发手册 · 看云

    # 分布式数据库 ThinkPHP内置了分布式数据库的支持,包括主从式数据库的读写分离,但是分布式数据库必须是相同的数据库类型. 配置`database.deploy` 为1 可以采用分布式数据库支持 ...

  9. php标签扩展,标签扩展 · ThinkPHP5.0完全开发手册 · 看云

    ## 标签库加载 模板中加载标签库,预加载自定义标签库,扩展内置标签库的加载 请参考:模板/标签库 >[info]建议开发者将自定义标签库请放置应用目录中,请勿放在框架系统目录内,以免使用`Co ...

最新文章

  1. 桂林哪些职校可以学计算机,桂林市有几个中等职业学校
  2. 量子信息先行者中科院院士郭光灿:“要把中国量子计算机卖到国外”
  3. qmake 之 CONFIG 与 QT 乱谈
  4. 知识图谱(五)——实体消歧
  5. Weblogic 10.3.2 安装过程中出现致命错误的处理方法
  6. 2012年软件开发者薪资调查报告
  7. 运维安全加固规范_DBA如何巧用“三十六计”保障数据库安全?
  8. 12.RabbitMQ实战 --- 聪明的Rabbit:扩展RabbitMQ
  9. 【深度学习笔记】多层感知机,非权值共享型卷积神经网络,权值共享型卷积神经网络之间的关系
  10. 解决docker-compose: command not found
  11. MySQL 网站上的 GA 是什么意思?
  12. 5G基站到底长啥样?和4G有啥区别?
  13. 京东平台的产品标题的优化有什么技巧?
  14. 《软硬结合——从零打造物联网》
  15. mysql 餐饮管理系统_Java Mysql 餐饮管理系统 过程心得记录
  16. 写信中“敬启者”与“敬启”的区别
  17. 刚安装的PostgreSQL默认用户名和密码是多少?
  18. 新建小程序项目提示:登录用户不是该小程序的开发者
  19. 8.1 Python图像处理之图像典型分割-SUSAN边缘检测
  20. 基于Matlab/simulink的VSG虚拟同步机控制

热门文章

  1. word中整理疏忽的页眉页脚操作
  2. 机架式服务器怎么维护,机架式服务器只能放在机房使用吗?
  3. 自媒体怎么蹭热点?有它就够了
  4. matlab 图像接缝_接缝雕刻算法似乎是无法调整图像大小的方法
  5. rfa 文件读取_「rfa」rfa文件用什么软件打开? - seo实验室
  6. 《乔布斯传》英文原著重点词汇笔记(四)【 chapter two 】
  7. 计算机教师所需技能,中小学教师信息技术能力标准
  8. 解析淘宝二合一连接php,如何从淘口令或二合一链接中提取淘客PID?
  9. 伺服电机常用参数设置_伺服这些参数的设置很重要!切记!切记!
  10. android亮屏解锁demo