A 实例化多层控制器
格式:[资源://][模块/]控制器
A函数是用来实例化我们的Action类的(在3.2的版本中同样可以使用于Controller类),eg:
在程序中有2个Action 分别是IndexAction 和 TestAction, 在IndexAction中有个showHello的方法能够输出Hello world !如果在TestAction中同样需要这么个操作,最原始的方法就是导入文件,使用A方法就会使得代码简洁的多。
//原始代码 class TestAction extends Action{ public function index(){ $index = new IndexAction(); //实例化IndexAction,如果俩Action不在同一个目录下,还需要添加路径 echo $index->showHello(); //调用showHello()方法 } } /* 使用A函数 * 使用A函数,不需要导入文件,只需要将实例化IndexAction的代码稍作修改 */ $index = A('IndexAction'); //实例化IndexAction
A 函数还有三个参数 A($name, $layer='', $level='')
$name : 资源地址
$layer : 控制器名称
$level : 控制器层次
return Controller | false
B 执行某个行为
这是随着行为应运而生的新生函数,可以执行某个行为,例如B('app_begin');就是在项目开始之前,执行这个行为定义的所有函数,支持2个参数,第二个参数支持需要接受一个数组,例如
B('app_begin',array("name"=>"tdweb","time"=>time())); B($name, $tag='', &$params=null) $name(string) : 行为名称 $tag(string) : 标签名称(行为类无需传入) $params(mixed) : 传入的参数 return void
C 获取和设置配置参数,支持批量定义
获取值:
获取所有设置 :C(); 不传递任何参数,返回一个包含所有设置的数组。
获取指定配置 :C('URL_MODEL'); 得到URL_MODEL的配置信息。
获取指定二维数组配置 :C('array.name'); 返回数组array下的key为name所对应的值
设置值:
为二维数组赋值C('array.name','value');给array下的key为name所对应的值赋予新的value值
批量赋值:
$test = array('URL_MODEL'=>1,"THIN_MODEL"=>true); C($test); //直接将数组里的值赋值了
注意: 需要说明的是,这里虽然更改了配置的值,但是仅仅是这个页面做了更改,到下个页面就不起作用了,如果想永久更改,需要配合F函数,将配置文件写入config.php才行
C($name=null, $value=null, $default=null);
$name(string|array) : 配置变量
$value(mixed) : 配置值
$default : 默认值
return mixed
D 实例化模型类
格式 [资源://][模块/] 模型
和A函数类似,如果不使用D函数,就需要导入Model,然后new Model,剩下的就一样了。
但,D函数有2个点,一是如果之前实例化过这个Model,那么就不再实例化了,省资源;二是方便调试,如果不存在这个Model,会抛出TP异常,非常人性化。
如果访问本项目的Model直接D("Model名称");就可以了,如果打算跨项目访问,就使用D("Model名称","项目名称");
D($name='', $layer='');
$name(string) : 资源地址
$layer(string) : 模型层名称
return Model
E 抛出异常处理
E($msg, $code=0); $msg(string) : 异常消息 $code(integer) : 异常代码 默认为0 return void
F 快速文件数据读取和保存,针对简单类型数据 字符串、数组
快速保存数据:
F('mydata',$data);就会在项目Data目录下保存一个名叫mydata.php的文件,里面的内容是该函数的第二个参数
指定保存时间:
F('mydata',$data,60);数据保存的时间为60秒,间隔大于60秒,缓存文件会被删除
指定保存目录:
F('mydata',$data,60,DATA_PATH); 指定数据保存在data目录下
立即删除缓存:
F('mydata',null);第二个参数传递null值,就是将mydata的数据内容清空
读取缓存数据:
F('mydata'); 读取mydata的缓存数据
F($name, $value="", $path=DATA_PATH);
$name(string) : 缓存名称
$value(mixed) : 缓存值
$path(string) : 缓存路径
return mixed