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 相关文章推荐
用cookies来跟踪识别用户
Oct 09 PHP
php设计模式 Adapter(适配器模式)
Jun 26 PHP
yii框架源码分析之创建controller代码
Jun 28 PHP
php页面防重复提交方法总结
Nov 25 PHP
Destoon模板制作简明教程
Jun 20 PHP
Laravel框架表单验证详解
Sep 04 PHP
php中运用http调用的GET和POST方法示例
Sep 29 PHP
php实现数组中索引关联数据转换成json对象的方法
Jul 08 PHP
php中实现用数组妩媚地生成要执行的sql语句
Jul 10 PHP
php给图片加文字水印
Jul 31 PHP
PHP统计当前在线用户数实例讲解
Oct 21 PHP
PHP Pipeline 实现中间件的示例代码
Apr 26 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类
2008/04/09 PHP
Symfony数据校验方法实例分析
2015/01/26 PHP
memcache一致性hash的php实现方法
2015/03/05 PHP
微信公众平台开发教程④ ThinkPHP框架下微信支付功能图文详解
2019/04/10 PHP
Uglifyjs(JS代码优化工具)入门 安装使用
2020/04/13 Javascript
JS正则表达式大全(整理详细且实用)
2013/11/14 Javascript
javascript获取元素CSS样式代码示例
2013/11/28 Javascript
js控制浏览器全屏示例代码
2014/02/20 Javascript
js阻止事件追加的具体实现
2014/10/15 Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
2016/06/14 Javascript
Javascript实现代码折叠功能
2016/08/25 Javascript
js获取元素的标签名实现方法
2016/10/08 Javascript
JavaScript实现邮箱地址自动匹配功能代码
2016/11/28 Javascript
Bootstrap CSS使用方法
2016/12/23 Javascript
浅谈JavaScript正则表达式-非捕获性分组
2017/03/08 Javascript
vuejs实现递归树型菜单组件
2018/01/13 Javascript
vue实现条件叠加搜索的解决方法
2019/05/28 Javascript
优雅的处理vue项目异常实战记录
2019/06/05 Javascript
三剑客:offset、client和scroll还傻傻分不清?
2020/12/04 Javascript
微信小程序tab左右滑动切换功能的实现代码
2021/02/08 Javascript
Python中的默认参数详解
2015/06/24 Python
win与linux系统中python requests 安装
2016/12/04 Python
Python3 A*寻路算法实现方式
2019/12/24 Python
基于MSELoss()与CrossEntropyLoss()的区别详解
2020/01/02 Python
利用python绘制数据曲线图的实现
2020/04/09 Python
python中用ggplot绘制画图实例讲解
2021/01/26 Python
HTML5实现WebSocket协议原理浅析
2014/07/07 HTML / CSS
详解如何在登录过期后跳出Ifram框架
2020/09/10 HTML / CSS
adidas官方旗舰店:德国运动用品制造商
2017/11/25 全球购物
中学教师岗位职责
2013/11/26 职场文书
公司应聘求职信
2014/06/21 职场文书
2014年教师节红领巾广播稿
2014/09/10 职场文书
民间借贷纠纷案件代理词
2015/05/26 职场文书
校园广播稿范文
2015/08/19 职场文书
2016大学优秀学生干部事迹材料
2016/03/01 职场文书
讨论nginx location 顺序问题
2022/05/30 Servers