ThinkPhp单字母函数

首先A、D、S、L、C、F、I   他们都在 /THINKPHP/Common/functions.php 这个文件中

下面我分别说明一下他们的功能

A() 加载Action类

D() 加载Model类

S()全局缓存配置

L() 获取语言定义

C() 获取配置值

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

I( ) 快速创建一个对象实例

1.A快速创建Action对象

$action = new UserAction();// 等同于以下写法:

$action = A("User");

而且,如果当前的UserAction类还没有引入的话,A方法会自动引入。并且具有单例模式的支持,不会重复创建相同的Action对象。

A方法支持跨项目调用,例如:

$action = A("User",‘Admin‘); //实例化Admin项目的UserAction类

再例如我们的程序有2个Action分别是IndexAction和TestAction,在 IndexAction中有个myHello方法能够输出hello world,如果我也想在TestAction中也输出同样一段文字怎么办?最原始的方法首先我们导入IndexAction.class.php这个文件,然后new IndexAction,最后调用myHello方法才行。

代码一般为:

PHP代码

<?php

import("@.Action.Index");

//导入本项目目录下Action目录下的Index.class.php文件。

class TestAction extends Action{

public function index()

{

$index=new IndexAction();//实例化IndexAction

echo $index->myHello();//调用myHello()方法

}

}

?>

那么,如果我们用A函数,怎么写呢?PHP代码

<?php

class TestAction extends Action{

public function index()

{

$index=A("Index");

echo $index->myHello();

}

}

?>

呵呵,少写很多代码吧。当然,这还不是最偷懒的方法,请看下边的R()函数,就知道什么是偷懒的极致了。

2:B函数

  这是随着行为应运而生的新生函数,可以执行某个行为,例如B(‘app_begin‘);就是在项目开始之前,执行这个行为定义的所有函数,支持2个参数,第二个参数支持需要接受一个数组,例如B(‘app_begin‘,array("name"=& gt;"tdweb","time"=>time()));这样。

3:C函数

    获取配置值,这个大家用的应该不少。虽然使用方便,但是C函数无疑是一个非常强大的函数。

获取值:

获取所有设置:C(); 不传递任何参数,返回一个包含所有设置的数组。

获取指定配置:C(‘URL_MODEL‘) 这样就能得到URL_MODEL的配置信息

获取指定二维数组配置:C("array.name"),这样就返回数组array下的key为name所对应的值

设置值:为二维数组赋值C("array.name","value"),原理同上(获取array.name的值),后边的value是值面向

批量赋值:

$test=array("URL_MODEL"=>1,"THIN_MODEL"=>true");

C($test);

这样直接将数组里的值赋值了

判断是否赋值:

C("?URL_MODEL")这样前边加个"?",如果已经赋值,则返回true

需要说明的是,这里虽然更改了配置的值,但是仅仅是这个页面做了更改,到下个页面就不起作用了,如果想改就永久更改,那么需要配合F函数,将配置文件写入config.php才行。

4:D快速创建模型数据对象

先定义好模型类,如UserModel,然后就可以用D()函数对数据进行操作了。例如:

先在"你的项目"\Lib\Model下建立一个名为UserModel.class.php的PHP脚本,内容如下:

class UserModel extends Model{}

然后,无需增加任何属性和方法,就可以进行如下操作:

$User = D("User"); //实例化User对象,User是你在数据库建立的一个名为"前缀_user"的数据表

也可以用$User = new UserModel()代替,进行实例化对象的操作。

实例化之后,就可以对数据进行增删查改等一系列操作了,如:

$User->find(1); //查找主键为1的记录

5.S快速操作缓存方法

ThinkPHP把各种缓存方式都抽象成统一的缓存类来调用,而且ThinkPHP把所有的缓存机制统一成一个S方法来进行操作,所以在使用

不同的缓存方式的时候并不需要关注具体的缓存细节。如:

S(‘data‘,$Data); //使用data标识缓存$Data数据

S(‘data‘,$Data,3600); //缓存$Data数据3600秒

$Data = S(‘data‘); //获取缓存数据

S(‘name‘,null); // 删除缓存标识name

6.L快速操作语言变量

L方法提供了多语言的支持,可以快速设置和获取语言定义。

L(‘USER_INFO’,’用户信息’); //设置名称为USER_INFO 的语言变量

L(‘USER_INFO’);   // 获取USER_INFO的语言变量值

//批量赋值

$array[‘USER_INFO’] = ‘用户信息’;

$array[‘ERROR_INFO’] = ‘错误信息’;

L($array);

7.C 快速操作配置变量

C(‘USER_AUTH_ON’,true);     //设置名称为USER_AUTH_ON 的配置参数

C(‘USER_AUTH_ON’);  //获取USER_AUTH_ON的变量值

同L一样,C也支持批量赋值

注意:配置参数不区分大小写

此外从1.5版本开始,C方法还支持二维数组的操作

C(‘USER.USER_TYPE‘,1);

C(‘USER.USER_AUTH_ON‘);

8. F 文件数据保存方法

F方法主要用于项目的文件数据的写入、更改和删除,其工作机理和S方法是类似的,区别在于用途不同,数据保存的目录也不同,而且不能指定缓存方式,因为默认就是文件形式保存数据。

F方法使用了var_export方法,所以只能支持简单数据类型,不支持对象的缓存

9:R函数

还记得我们的A函数吧,如果仅仅想执行某个方法,其实用R函数更方便,刚才的可以替换成PHP代码

<?php

class TestAction extends Action{

public function index()

{

$index=R("Index","myHello");

echo $index;

}

}

?>

ThinkPhp单字母函数,布布扣,bubuko.com

时间: 2024-11-05 13:31:23

ThinkPhp单字母函数的相关文章

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

ThinkPHP单字母函数(快捷方法)使用总结 投稿:shichen2014 字体:[增加 减小] 类型:转载 时间:2014-07-23 这篇文章主要介绍了ThinkPHP单字母函数(快捷方法)使用总结,对ThinkPHP的快捷方法做了针对性的归纳总结,需要的朋友可以参考下 在ThinkPHP中有许多使用简便的单字母函数(即快捷方法),可以很方便开发者快速的调用,但是字母函数却不方便记忆,本文将所有的字母函数总结一下,以方便以后查找. 1.U() URL组装 支持不同URL模式 ? 1 U($

ThinkPHP 单字母函数整理

TP所有单独的函数,除了两个用来生成项目的buildAppDir之类的,其余都在框架目录/Common/functions.php这个文件里. A函数(基本是Action的简写) A函数是用来实例化我们的Action类的,例如我们的程序有2个Action分别是IndexAction和TestAction,在 IndexAction中有个myHello方法能够输出hello world,如果我也想在TestAction中也输出同样一段文字怎么办?最原始的方法首先我们导入IndexAction.cl

thinkphp 单字母函数

在ThinkPHP中有许多使用简便的单字母函数(即快捷方法),可以很方便开发者快速的调用,但是字母函数却不方便记忆,本文将所有的字母函数总结一下,以方便以后查找. 1.U() URL组装 支持不同URL模式U($url='',$vars='',$suffix=true,$domain=false) @param string $url URL表达式,格式:'[模块/控制器/操作#锚点@域名]?参数1=值1&参数2=值2-'@param string|array $vars 传入的参数,支持数组和

ThinkPHP系统内置单字母函数函数

ThinkPHP中有很多重要的函数,其中大部分是单字母函数,这些函数在开发体验中发挥了重大的作用.有句话说的很精辟:浓缩的才是精华! 这绝对是TP的单字母方法的真实写照,用过的你一定懂的! 为了能方便大家学习和掌握,在这里汇总下ThinkPHP中的经典函数用法,无论你是资深还是菜鸟TPer,绝对不容错过哦 ^_^A 函数:实例化控制器R 函数:直接调用控制器的操作方法C 函数:设置和获取配置参数L 函数:设置和获取语言变量D 函数:实例化模型M 函数:实例化模型(无需定义模型类)N 函数:计数器

Thinkphp的单字母函数整理

有人不太喜欢TP这种单字母函数,其实这也是TP的一个特色,如果理解了这些函数的作用,不管是背,还是写,都是非常方便的,接下来我们以字母顺序开始.A函数 B函数 C函数 D函数 F函数 L函数 R函数 S函数 U函数 一.A函数(基本是Action的简写)A函数是用来实例化我们的Action类的,例如我们的程序有2个Action分别是IndexAction和TestAction,在 IndexAction中有个myHello方法能够输出hello world,如果我也想在TestAction中也输

php单字母函数(快捷方法)使用总结&lt;转载&gt;

在ThinkPHP中有许多使用简便的单字母函数(即快捷方法),可以很方便开发者快速的调用,但是字母函数却不方便记忆,本文将所有的字母函数总结一下,以方便以后查找.原网址 1.U() URL组装 支持不同URL模式 1 U($url='',$vars='',$suffix=true,$domain=false)   @param string $url URL表达式,格式:'[模块/控制器/操作#锚点@域名]?参数1=值1&参数2=值2...'   @param string|array $var

5.0助手函数及与3.2版本的单字母函数对比

5.0助手函数 助手函数 描述 abort 中断执行并发送HTTP状态码 action 调用控制器类的操作 cache 缓存管理 config 获取和设置配置参数 controller 实例化控制器 cookie Cookie管理 db 实例化数据库类 debug 调试时间和内存占用 dump 浏览器友好的变量输出 exception 抛出异常处理 halt 变量调试输出并中断执行 import 导入所需的类库 input 获取输入数据 支持默认值和过滤 json JSON数据输出 jsonp

ThinkPHP3.1.3的单字母函数汇总

http://www.thinkphp.cn/topic/9688.html A函数: 用于实例化Action 格式:[项目://][分组/]模块 /** * A函数用于实例化Action 格式:[项目://][分组/]模块 * @param string $name Action资源地址 * @param string $layer 控制层名称 * @param boolean $common 是否公共目录 * @return Action|false */ A($name,$layer=''

php单字母函数

D() D函数用于实例化模型类 M() M函数用于实例化一个没有模型文件的Model I('id',0); //获取id参数 自动判断get或者post U() URL组装 F() 快速文件数据读取和保存 针对简单类型数据 字符串.数组 F($name, $value='',$path=DATA_PATH) C('DB_CONFIG_SYN') explode() 函数把字符串分割为数组: implode() 函数把数组元素组合为一个字符串