ThinkPHP单字母函数(快捷方法)使用总结


Posted in PHP onJuly 23, 2014

在ThinkPHP中有许多使用简便的单字母函数(即快捷方法),可以很方便开发者快速的调用,但是字母函数却不方便记忆,本文将所有的字母函数总结一下,以方便以后查找。

1.U() URL组装 支持不同URL模式

U($url='',$vars='',$suffix=true,$domain=false)

  @param string $url URL表达式,格式:'[模块/控制器/操作#锚点@域名]?参数1=值1&参数2=值2...'
  @param string|array $vars 传入的参数,支持数组和字符串
  @param string $suffix 伪静态后缀,默认为true表示获取配置值
  @param boolean $domain 是否显示域名
  @return string

2.D() D函数用于实例化模型类 格式 [资源://][模块/]模型

D($name='',$layer='')

  @param string $name 资源地址
  @param string $layer 模型层名称
  @return Model

3.M() M函数用于实例化一个没有模型文件的Model

M($name='',$tablePrefix='',$connection='')

  @param string $name Model名称 支持指定基础模型 例如MongoModel:User
  @param string $tablePrefix 表前缀
  @param mixed $connection 数据库连接信息
  @return Model

4.I() 获取输入参数 支持过滤和默认值

I($name,$default='',$filter=null)

  使用方法:

I('id',0); //获取id参数 自动判断get或者post
 I('post.name','','htmlspecialchars'); //获取$_POST['name']
 I('get.'); //获取$_GET

5.B() 执行某个行为

B($name,$tag='',&$params=NULL)

  @param string $name 行为名称
  @param string $tag 标签名称(行为类无需传入)
  @param Mixed $params 传入的参数
  @return void

6.C() 读取及设置配置参数

C($name=null,$value=null,$default=null)

  @param string|array $name 配置变量
  @param mixed $value 配置值
  @param mixed $default 默认值
  @return mixed

7.E() 抛出异常处理

E($msg, $code=0)

  @param string $msg 异常消息
  @param integer $code 异常代码 默认为0
  @return void

8.G() 记录和统计时间(微秒)和内存使用情况

G($start,$end='',$dec=4)

  使用方法:

G('begin'); // 记录开始标记位
 // ... 区间运行代码
 G('end'); // 记录结束标签位
 echo G('begin','end',6); //统计区间运行时间 精确到小数后6位
 echo G('begin','end','m'); // 统计区间内存使用情况

  如果end标记位没有定义,则会自动以当前作为标记位
  其中统计内存使用需要 MEMORY_LIMIT_ON 常量为true才有效
  @param string $start 开始标签
  @param string $end 结束标签
  @param integer|string $dec 小数位或者m
  @return mixed

9.L()获取和设置语言定义(不区分大小写)

L($name=null,$value=null)

  @param string|array $name 语言变量
  @param mixed $value 语言值或者变量
  @return mixed

10.T()获取模版文件 格式 资源://模块@主题/控制器/操作

T($template='',$layer='')

  @param string $name 模版资源地址
  @param string $layer 视图层(目录)名称
  @return string

11.N() 设置和获取统计数据

N($key,$step=0,$save=false)

  使用方法:

N('db',1); // 记录数据库操作次数
 N('read',1); // 记录读取次数
 echo N('db'); // 获取当前页面数据库的所有操作次数
 echo N('read'); // 获取当前页面读取次数

  @param string $key 标识位置
  @param integer $step 步进值
  @return mixed

12.A()A函数用于实例化控制器

格式:[资源://][模块/]控制器

A($name,$layer='',$level='')

  @param string $name 资源地址
  @param string $layer 控制层名称
  @param integer $level 控制器层次
  @return Controller|false

13.R() 远程调用控制器的操作方法

URL 参数格式 [资源://][模块/]控制器/操作

R($url,$vars=array(),$layer='')

  @param string $url 调用地址
  @param string|array $vars 调用参数 支持字符串和数组
  @param string $layer 要调用的控制层名称
  @return mixed

14.W()渲染输出Widget

W($name,$data=array())

  @param string $name Widget名称
  @param array $data 传入的参数
  @return void

15.S()缓存管理

S($name,$value='',$options=null)

  @param mixed $name 缓存名称,如果为数组表示进行缓存设置
  @param mixed $value 缓存值
  @param mixed $options 缓存参数
  @return mixed

16.F() 快速文件数据读取和保存 针对简单类型数据 字符串、数组

F($name, $value='',$path=DATA_PATH)

  @param string $name 缓存名称
  @param mixed $value 缓存值
  @param string $path 缓存路径
  @return mixed

关于这些快捷方法的详细操作,读者可以参考本站上的相关实例教程。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP截取中文字符串的问题
Jul 12 PHP
php 设计模式之 工厂模式
Dec 19 PHP
PHP 文件上传全攻略
Apr 28 PHP
CI框架源码阅读,系统常量文件constants.php的配置
Feb 28 PHP
php使用正则表达式提取字符串中尖括号、小括号、中括号、大括号中的字符串
Apr 05 PHP
php 解压rar文件及zip文件的方法
May 05 PHP
smarty内置函数section的用法
Jan 22 PHP
PHP-X系列教程之内置函数的使用示例
Oct 16 PHP
PHP二维数组实现去除重复项的方法【保留各个键值】
Dec 21 PHP
php抽象方法和普通方法的区别点总结
Oct 13 PHP
浅谈laravel-admin form中的数据,在提交后,保存前,获取并进行编辑
Oct 21 PHP
PHP PDO和消息队列的个人理解与应用实例分析
Nov 25 PHP
PHP中的use关键字概述
Jul 23 #PHP
ThinkPHP实现将SESSION存入MYSQL的方法
Jul 22 #PHP
ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例
Jul 22 #PHP
ThinkPHP权限认证Auth实例详解
Jul 22 #PHP
ThinkPHP行为扩展Behavior应用实例详解
Jul 22 #PHP
qq登录,新浪微博登录接口申请过程中遇到的问题
Jul 22 #PHP
php.ini save_handler 修改不生效的解决办法
Jul 22 #PHP
You might like
一篇入门的php Class 文章
2007/04/04 PHP
php连接mysql数据库代码
2009/03/10 PHP
php表单敏感字符过滤类
2014/12/08 PHP
laravel 解决Validator使用中出现的问题
2019/10/25 PHP
去除链接虚线全面分析总结
2006/08/15 Javascript
Javascript load Page,load css,load js实现代码
2010/03/31 Javascript
jQuery结合PHP+MySQL实现二级联动下拉列表[实例]
2011/11/15 Javascript
对比分析AngularJS中的$http.post与jQuery.post的区别
2015/02/27 Javascript
AngularJS的内置过滤器详解
2015/05/14 Javascript
js实现头像图片切割缩放及无刷新上传图片的方法
2015/07/17 Javascript
js 求时间差的实现代码
2016/04/26 Javascript
jQuery中show与hide方法用法示例
2016/09/16 Javascript
vue3.0 CLI - 2.4 - 新组件 Forms.vue 中学习表单
2018/09/14 Javascript
微信小程序开发之转发分享功能
2019/10/22 Javascript
[41:56]Spirit vs Liquid Supermajor小组赛A组 BO3 第一场 6.2
2018/06/03 DOTA
Python语言的面相对象编程方式初步学习
2016/03/12 Python
详谈Python3 操作系统与路径 模块(os / os.path / pathlib)
2018/04/26 Python
python模块导入的细节详解
2018/12/10 Python
对python For 循环的三种遍历方式解析
2019/02/01 Python
python爬取cnvd漏洞库信息的实例
2019/02/14 Python
python脚本监控logstash进程并邮件告警实例
2020/04/28 Python
Python远程方法调用实现过程解析
2020/07/28 Python
django中ImageField的使用详解
2020/12/21 Python
html5 canvas简单封装一个echarts实现不了的饼图
2018/06/12 HTML / CSS
澳大利亚便宜的家庭购物网站:CrazySales
2018/02/06 全球购物
意大利包包和行李箱销售网站:Bagaglio.it
2021/03/02 全球购物
Java中有几种方法可以实现一个线程?用什么关键字修饰同步方法?stop()和suspend()方法为何不推荐使用?
2015/08/04 面试题
奖学金自我鉴定范文
2013/10/03 职场文书
质检员的岗位职责
2013/11/15 职场文书
挑战杯创业计划书的写作指南
2014/01/07 职场文书
总经理的岗位职责
2014/02/23 职场文书
怎么写好自荐书
2014/03/02 职场文书
2014年话务员工作总结
2014/11/19 职场文书
毕业赠语大全
2015/06/23 职场文书
2019个人半年工作总结
2019/06/21 职场文书
腾讯云服务器部署前后分离项目之前端部署
2022/06/28 Servers