tp3中的字母函数及其它函数

    在tp3的框架中我们必定会使用字母函数来进行开发,对这些字母函数的作用和使用不理解的话那可是不行的,学完这些字母函数我还是有点不是很能懂,所以又去网上大概恶补了下,现在就把之前在菜鸟教程学习了tp框架的字母函数,还有一些其它的函数,把那边学到的和简单的使用方法总结到这边。

1、A函数:A方法的作用就是实例化控制器。用于在内部实例化控制器,调用的格式:A('[项目://][分组/]模块','控制器层名称');

//A函数最简单的用法
$User = A('User');

2、R函数:R方法的作用是直接调用控制器的操作方法。用于调用某个控制器的操作方法,是A方法的进一步增强和补充。R方法的调用格式:R('[项目://][分组/]模块/操作','参数','控制器层名称')

例如:先定义这么一个方法:

class UserAction extends Action {
    public function detail($id){
        return M('User')->find($id);
    }
}

那么就可以通过R方法在其他控制器里面调用这个操作方法(一般R方法用于跨模块调用):$data = R('User/detail',array('5'));表示调用User控制器的detail方法(detail方法必须是public类型),返回值就是查询id为5的一个用户数据。

3、C函数:C方法的作用是ThinkPHP用于设置、获取,以及保存配置参数的方法,在菜鸟教程中有说明到使用频率很高,但个人目前并没有碰到这种情况,所以我也不是很了解,也有可能是在thinkphp框架里使用频率很高,但实际开发使用并不会有太多接触。当然这只是我自己的猜测,并不是真正的真相,真相还得继续去深究。关于使用方法,因为C函数使用了函数重载设计,用法比较多,想要了解更多的话可以去菜鸟教程去看,我就大概列举其中一种用法:

$config['user_id'] = 1;
$config['user_type'] = 1;
C($config);

4、L函数:L方法用于启用多语言的情况下,设置和获取当前的语言定义。调用格式:L('语言变量'[,'语言值']);。因为这个我个人实际开发也没有接触太多,所以我也不作太多说明,具体可以在菜鸟教程上查看相关说明和使用。

5、(1)D方法实际开发中是用的很多的方法了,几乎每个控制器都会使用到这个函数,用于实例化自定义模型类,是ThinkPHP框架对Model类实例化的一种封装,并实现了单例模式,支持跨项目和分组调用,调用格式如下:D('[项目://][分组/]模型','模型层名称');方法的返回值是实例化的模型对象。

(2)D方法可以自动检测模型类,如果存在自定义的模型类,则实例化自定义模型类,如果不存在,则会实例化Model基类,同时对于已实例化过的模型,不会重复去实例化。

// 实例化User模型
$User = D('User');

6、M函数:M函数跟D函数的作用都一样是实例化模型,但区别在于M函数不需要定义模型类需要了解它们的区别可以去我的另外一篇博客看一下:https://blog.csdn.net/li_wei_bin233/article/details/79597064。M方法的调用格式:M('[基础模型名:]模型名','数据表前缀','数据库连接信息');主要实例化的是基础模型类(默认为Model类)。

//实例化User模型
$User = M('User');

7、N方法属于计数器方法,被用于核心的查询、缓存统计的计数和统计。但是其实可以用于应用的其他计数用途,用法比较简单,调用格式:N('计数位置'[,'步进值']);

//统计页面的访问次数
//每执行到这一步,都会自增一次
N('read',1);

8、G函数:G函数的作用是调试统计。ThinkPHP长期以来需要通过debug_start、debug_end方法甚至Debug类才能完成的功能,3.1版本中被一个简单的G方法取代了,不可不谓是一次华丽升级。G方法的作用包括标记位置和区间统计两个功能。用法也挺多可以去菜鸟教程看看。

//标记位置
G('begin');
9、U函数:U函数的作用就是URL地址生成
(1)U方法用于完成对URL地址的组装,特点在于可以自动根据当前的URL模式和设置生成对应的URL地址,格式为: U('地址','参数','伪静态','是否跳转','显示域名');
(2)在模板中使用U方法而不是固定写死URL地址的好处在于,一旦你的环境变化或者参数设置改变,你不需要更改模板中的任何代码。

(3)在模板中的调用格式需要采用 {:U('地址', '参数'…)} 的方式。

给个简单使用的示例,其它用法可以另外去了解:

// 生成User模块的add操作地址
U('User/add');
10、I函数:I方法的作用是安全获取系统输入变量,是ThinkPHP众多单字母函数中的新成员,其命名来自于英文Input(输入),主要用于更加方便和安全的获取系统输入变量,可以用于任何地方,用法格式如下: I('变量类型.变量名',['默认值'],['过滤方法']);

变量类型是指请求方式或者输入类型,包括:

//以get为示例
echo I('get.id'); // 相当于 $_GET['id']
echo I('get.name'); // 相当于$_GET['name']

11、S函数:缓存的设置与存取(具体看菜鸟教程)

S(array('type'=>'xcache','expire'=>60)); // 缓存初始化
12、F函数:快速设置缓存和存取
(1)F方法其实是S方法的一个子集功能,仅用于简单数据缓存,并且只能支持文件形式,不支持缓存有效期,因为采用的是PHP返回方式,所以其效率较S方法较高,因此我们也称之为快速缓存方法。
(2)F方法的特点:简单数据缓存;文件形式保存;采用PHP返回数据方式加载缓存;支持子目录缓存以及自动创建;支持删除缓存和批量删除;
//写入和读取缓存
F('data','test data');
/*默认的保存起始路径是DATA_PATH(该常量在默认配置位于RUNTIME_PATH.'Data/'下面),也就是说会生成文件名为DATA_PATH.'data.php'的缓存文件。*/

13、Session函数:Session方法用于Session 设置、获取、删除和管理操作。


14、cookie函数也是一个多元化操作函数,完成cookie的设置、获取和删除操作。


15、import函数:import方法是ThinkPHP框架用于类库导入的封装实现,尤其对于项目类库、扩展类库和第三方类库的导入支持,import方法早期的版本可以和java的import方法一样导入目录和通配符导入,后来考虑到性能问题,在后续的版本更新中不断改进和简化了,所以现在的用法比较简单明了。调用格式:import('类库名', '起始路径', '类库后缀'),imprt方法有一个别名vendor方法,专门用于导入第三方类库,区别在于起始路径和类库后缀默认值不同。

注:有些函数个人并不认为用得比较频繁,目前自身很少用,考虑到可能只是目前用不到,先保留意见。


  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值