ThinkPHP单字母函数整理
参考来源:http://m-oyzm.iteye.com/blog/965299
A函数(基本是Action的简写)
A函数是用来实例化我们的Action类的,例如我们的程序有2个Action分别是IndexAction和TestAction,在 IndexAction中有个myHello方法能够输出hello world,如果我也想在TestAction中也输出同样一段文字怎么办?最原始的方法首先我们导入IndexAction.class.php这个文件,然后new IndexAction,最后调用myHello方法才行。
代码一般为 :
<?php ?("@.Action.Index"); //导入本项目目录下Action目录下的Index.class.php文件。 class TestAction extends Action{ public function index() { $index=new IndexAction();//实例化IndexAction echo $index->myHello();//调用myHello()方法 } } ?>
那么,如果我们用A函数,怎么写呢?
<?php class TestAction extends Action{ public function index() { $index=A("Index"); echo $index->myHello(); } } ?>
B函数
这是随着行为应运而生的新生函数,可以执行某个行为,例如B('app_begin');就是在项目开始之前,执行这个行为定义的所有函数,支持2个参数,第二个参数支持需要接受一个数组,例如B('app_begin',array("name"=& gt;"tdweb","time"=>time()));这样。
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才行。
D函数
DAO函数应该是我们写程序用的最多的函数了。和A函数类似,如果不使用D函数,就需要导入Model,然后new Model,剩下都是一样的。
但是D函数有2个有点,一是如果之前实例化过这个Model,那么就不再实例化了,剩资源;二是方便调试,如果不存在 这个Model,会抛出TP异常,非常人性化。
如果访问本项目的Model直接D("Model名称");就可以了,如果打算跨项目访问,就使用 D("Model名称","项目名称");其他的就没什么说的了。
F函数
快速读取和保存文件数据
快速保存数据:F("mydata","这里是要保存的数据"),这样就在项目Data目录下保存了一个名叫mydata.php的文件,里边的内容是该函数的第二个参数。
指定保存时间 :F("mydata","这里是要保存的数据","60"),这样,如果下次再访问,间隔大于60秒则删除次缓存文件。
指定保存目录:F("mydata","这里是要保存的数据","60",DATA_PATH) ,这样就指定保存在data目录下
立即删除缓存:F("mydata",null),第二个参数传递一个null值,这样就删除了mydate这个缓存
读取缓存数据:F("mydata"),这样就读取这个缓存了
L函数
语言定义函数,L("intro")获取定义成intro的语言,l("intro","介绍")为intro赋值,关于这个赋值的长久性,道理同C函数一样。
R函数
还记得我们的A函数吧,如果仅仅想执行某个方法,其实用R函数更方便,刚才的可以替换成
<?php class TestAction extends Action{ public function index() { $index=R("Index","myHello"); echo $index; } } ?>
S函数
全局缓存读写函数,和C类似,不过是直接写成文件的哦,写在Temp目录下,不过在缓存有一点需要注意,如果缓存名称是aaa,那么缓存生成的文件名称就是md5("aaa")的值,值得注意。
U函数
U函数是很强大的一个函数,它主要是进行URL组装,同时支持不同模式和路由
例如:
取得当前模块的Action地址 :U("/nowMethod");
取得当前模块的Action地址,并传递参数:U("/nowMethod?params=test");
(如果不习惯上边那种方式,可以使用U("/nowMethod",array("params"=>"test");这样的数组方式传递参数,效果是一样的)
访问其他模块的方法:U("Other/otherMethod"),这样就是访问Other模块下的otherMethod方法
跨项目访问:U("appname://Other/otherMethod");
使用路由访问:U("appName://routeName@moduleName/actionName?params");

index.html代表网页的首页文件,是网站的默认页面。当用户访问一个网站时,通常会首先加载index.html页面。HTML(HypertextMarkupLanguage)是一种用于创建网页的标记语言,index.html也是一种HTML文件。它包含网页的结构和内容,以及用于格式化和布局的标签和元素。下面是一个示例的index.html代码:<

DJI has not confirmed any plans to introduce a new action camera yet. Instead, it seems that GoPro will get ahead of its rival this year, having teased that it will introduce two new action cameras on September 4. For context, these are expected to a

在许多中心化交易所出现问题后,越来越多的币圈投资者开始将资产转移到冷钱包中,以减少中心化交易所带来的风险。本文将介绍全球最早的冷钱包供应商Trezor,自2014年推出首款冷钱包至今,在全球多个国家销售。Trezor的产品包括2014年推出的ModelOne和2018年推出的进阶版本ModelT。下面将继续介绍这两款产品与其他冷钱包的区别。什么是Trezor冷钱包?2014年,Trezor推出了第一款冷钱包ModelOne。除了常见的BTC、ETH、USDT等币种外,该钱包还支持超过1000种其

Almost a year has passed since DJI released the Osmo Action 4 (curr. $299 on Amazon). Since then, the company has focused on its other divisions, including new RS camera gimbals. On top of that, it has introduced various drones as well like the Avata

Django是一个开源的Pythonweb框架,它采用了MVT(Model-View-Template)的架构模式,将应用程序分为模型(Model)、视图(View)和模板(Template)三个部分。其中,Model是Django框架中的一个基础组件,用于对数据进行定义和管理。本文将对Django框架中的Model进行详解。什么是Model在Django

MySQL中的index是索引的意思,是一种数据结构,用于加快数据库表的查询速度,索引可以类比于书籍的目录,存储了表中特定列的值和对应的行位置,使得数据库能够更快地定位和访问数据。索引的作用是提高查询效率,在没有索引的情况下,数据库需要逐行扫描整个表来找到匹配的数据,这种方式在大型表中会非常耗时,而有了索引后,数据库可以根据索引的顺序快速定位到所需的数据行,大大提高了查询速度。

PHP源码运行问题:index报错解决方法,需要具体代码示例PHP是一种广泛使用的服务器端脚本语言,经常被用于开发动态网站和Web应用程序。然而,有时候在运行PHP源码时会遇到各种问题,其中“index报错”是比较常见的一种情况。本文将介绍一些常见的index报错原因以及解决方法,并提供具体的代码示例,帮助读者更好地处理这类问题。问题描述:在运行PHP程序时

背景生产环境出现死锁流水,通过查看死锁日志,看到造成死锁的是两条一样的update语句(只有where条件中的值不同),如下:UPDATEtest_tableSET`status`=1WHERE`trans_id`='xxx1'AND`status`=0;UPDATEtest_tableSET`status`=1WHERE`trans_id`='xxx2'AND`status`=0;一开始比较费解,通过大量查询跟学习后,分析出了死锁


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SublimeText3 Chinese version
Chinese version, very easy to use

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

Notepad++7.3.1
Easy-to-use and free code editor

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),