zoukankan      html  css  js  c++  java
  • ThinkPHP内置函数详解D、F、S、C、L、A、I

    单字母函数D、F、S、C、L、A、I 他们都在ThinkPHP核心的ThinkPHP/Mode/Api/functions.php这个文件中定义.

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

    D() 加载Model类

    M() 加载Model类

    A() 加载Action类

    L() 获取语言定义

    C() 获取配置值    用法就是   C("这里填写在配置文件里数组的下标")

    S() 全局缓存配置 用法S(“这里相当于一个唯一的标识”)

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

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

    此处附带:ThinkPHP内置所有函数的原型定义

    复制代码
      1 <?php
      2 
      3 /**
      4  * Think API模式函数库
      5  */
      6 
      7 /**
      8  * 获取和设置配置参数 支持批量定义
      9  * @param string|array $name 配置变量
     10  * @param mixed $value 配置值
     11  * @param mixed $default 默认值
     12  * @return mixed
     13  */
     14 function C($name=null, $value=null,$default=null) {}
     15 
     16 /**
     17  * 加载配置文件 支持格式转换 仅支持一级配置
     18  * @param string $file 配置文件名
     19  * @param string $parse 配置解析方法 有些格式需要用户自己解析
     20  * @return void
     21  */
     22 function load_config($file,$parse=CONF_PARSE) {}
     23 
     24 /**
     25  * 抛出异常处理
     26  * @param string $msg 异常消息
     27  * @param integer $code 异常代码 默认为0
     28  * @return void
     29  */
     30 function E($msg, $code=0) {}
     31 
     32 /**
     33  * 记录和统计时间(微秒)和内存使用情况
     34  * 使用方法:
     35  * <code>
     36  * G('begin'); // 记录开始标记位
     37  * // ... 区间运行代码
     38  * G('end'); // 记录结束标签位
     39  * echo G('begin','end',6); // 统计区间运行时间 精确到小数后6位
     40  * echo G('begin','end','m'); // 统计区间内存使用情况
     41  * 如果end标记位没有定义,则会自动以当前作为标记位
     42  * 其中统计内存使用需要 MEMORY_LIMIT_ON 常量为true才有效
     43  * </code>
     44  * @param string $start 开始标签
     45  * @param string $end 结束标签
     46  * @param integer|string $dec 小数位或者m
     47  * @return mixed
     48  */
     49 function G($start,$end='',$dec=4) {}
     50 
     51 /**
     52  * 获取和设置语言定义(不区分大小写)
     53  * @param string|array $name 语言变量
     54  * @param string $value 语言值
     55  * @return mixed
     56  */
     57 function L($name=null, $value=null) {}
     58 
     59 /**
     60  * 添加和获取页面Trace记录
     61  * @param string $value 变量
     62  * @param string $label 标签
     63  * @param string $level 日志级别
     64  * @param boolean $record 是否记录日志
     65  * @return void
     66  */
     67 function trace($value='[think]',$label='',$level='DEBUG',$record=false) {}
     68 
     69 /**
     70  * 编译文件
     71  * @param string $filename 文件名
     72  * @return string
     73  */
     74 function compile($filename) {}
     75 
     76 /**
     77  * 获取输入参数 支持过滤和默认值
     78  * 使用方法:
     79  * <code>
     80  * I('id',0); 获取id参数 自动判断get或者post
     81  * I('post.name','','htmlspecialchars'); 获取$_POST['name']
     82  * I('get.'); 获取$_GET
     83  * </code>
     84  * @param string $name 变量的名称 支持指定类型
     85  * @param mixed $default 不存在的时候默认值
     86  * @param mixed $filter 参数过滤方法
     87  * @return mixed
     88  */
     89 function I($name,$default='',$filter=null) {}
     90 
     91 /**
     92  * 设置和获取统计数据
     93  * 使用方法:
     94  * <code>
     95  * N('db',1); // 记录数据库操作次数
     96  * N('read',1); // 记录读取次数
     97  * echo N('db'); // 获取当前页面数据库的所有操作次数
     98  * echo N('read'); // 获取当前页面读取次数
     99  * </code>
    100  * @param string $key 标识位置
    101  * @param integer $step 步进值
    102  * @return mixed
    103  */
    104 function N($key, $step=0,$save=false) {}
    105 
    106 /**
    107  * 字符串命名风格转换
    108  * type 0 将Java风格转换为C的风格 1 将C风格转换为Java的风格
    109  * @param string $name 字符串
    110  * @param integer $type 转换类型
    111  * @return string
    112  */
    113 function parse_name($name, $type=0) {}
    114 
    115 /**
    116  * 优化的require_once
    117  * @param string $filename 文件地址
    118  * @return boolean
    119  */
    120 function require_cache($filename) {}
    121 
    122 /**
    123  * 区分大小写的文件存在判断
    124  * @param string $filename 文件地址
    125  * @return boolean
    126  */
    127 function file_exists_case($filename) {}
    128 
    129 /**
    130  * 导入所需的类库 同java的Import 本函数有缓存功能
    131  * @param string $class 类库命名空间字符串
    132  * @param string $baseUrl 起始路径
    133  * @param string $ext 导入的文件扩展名
    134  * @return boolean
    135  */
    136 function import($class, $baseUrl = '', $ext=EXT) {}
    137 
    138 /**
    139  * 基于命名空间方式导入函数库
    140  * load('@.Util.Array')
    141  * @param string $name 函数库命名空间字符串
    142  * @param string $baseUrl 起始路径
    143  * @param string $ext 导入的文件扩展名
    144  * @return void
    145  */
    146 function load($name, $baseUrl='', $ext='.php') {}
    147 
    148 /**
    149  * 快速导入第三方框架类库 所有第三方框架的类库文件统一放到 系统的Vendor目录下面
    150  * @param string $class 类库
    151  * @param string $baseUrl 基础目录
    152  * @param string $ext 类库后缀
    153  * @return boolean
    154  */
    155 function vendor($class, $baseUrl = '', $ext='.php') {}
    156 
    157 /**
    158  * D函数用于实例化模型类 格式 [资源://][模块/]模型
    159  * @param string $name 资源地址
    160  * @param string $layer 模型层名称
    161  * @return Model
    162  */
    163 function D($name='',$layer='') {}
    164 
    165 /**
    166  * M函数用于实例化一个没有模型文件的Model
    167  * @param string $name Model名称 支持指定基础模型 例如 MongoModel:User
    168  * @param string $tablePrefix 表前缀
    169  * @param mixed $connection 数据库连接信息
    170  * @return Model
    171  */
    172 function M($name='', $tablePrefix='',$connection='') {}
    173 
    174 /**
    175  * 解析资源地址并导入类库文件
    176  * 例如 module/controller addon://module/behavior
    177  * @param string $name 资源地址 格式:[扩展://][模块/]资源名
    178  * @param string $layer 分层名称
    179  * @return string
    180  */
    181 function parse_res_name($name,$layer,$level=1) {}
    182 
    183 /**
    184  * A函数用于实例化控制器 格式:[资源://][模块/]控制器
    185  * @param string $name 资源地址
    186  * @param string $layer 控制层名称
    187  * @param integer $level 控制器层次
    188  * @return Controller|false
    189  */
    190 function A($name,$layer='',$level='') {}
    191 
    192 /**
    193  * 远程调用控制器的操作方法 URL 参数格式 [资源://][模块/]控制器/操作
    194  * @param string $url 调用地址
    195  * @param string|array $vars 调用参数 支持字符串和数组
    196  * @param string $layer 要调用的控制层名称
    197  * @return mixed
    198  */
    199 function R($url,$vars=array(),$layer='') {}
    200 
    201 /**
    202  * 执行某个行为
    203  * @param string $name 行为名称
    204  * @param Mixed $params 传入的参数
    205  * @return void
    206  */
    207 function B($name, &$params=NULL) {}
    208 
    209 /**
    210  * 去除代码中的空白和注释
    211  * @param string $content 代码内容
    212  * @return string
    213  */
    214 function strip_whitespace($content) {}
    215 
    216 /**
    217  * 浏览器友好的变量输出
    218  * @param mixed $var 变量
    219  * @param boolean $echo 是否输出 默认为True 如果为false 则返回输出字符串
    220  * @param string $label 标签 默认为空
    221  * @param boolean $strict 是否严谨 默认为true
    222  * @return void|string
    223  */
    224 function dump($var, $echo=true, $label=null, $strict=true) {}
    225 
    226 /**
    227  * URL重定向
    228  * @param string $url 重定向的URL地址
    229  * @param integer $time 重定向的等待时间(秒)
    230  * @param string $msg 重定向前的提示信息
    231  * @return void
    232  */
    233 function redirect($url, $time=0, $msg='') {}
    234 
    235 /**
    236  * 缓存管理
    237  * @param mixed $name 缓存名称,如果为数组表示进行缓存设置
    238  * @param mixed $value 缓存值
    239  * @param mixed $options 缓存参数
    240  * @return mixed
    241  */
    242 function S($name,$value='',$options=null) {}
    243 
    244 /**
    245  * 快速文件数据读取和保存 针对简单类型数据 字符串、数组
    246  * @param string $name 缓存名称
    247  * @param mixed $value 缓存值
    248  * @param string $path 缓存路径
    249  * @return mixed
    250  */
    251 function F($name, $value='', $path=DATA_PATH) {}
    252 
    253 /**
    254  * 根据PHP各种类型变量生成唯一标识号
    255  * @param mixed $mix 变量
    256  * @return string
    257  */
    258 function to_guid_string($mix) {}
    259 
    260 /**
    261  * XML编码
    262  * @param mixed $data 数据
    263  * @param string $root 根节点名
    264  * @param string $item 数字索引的子节点名
    265  * @param string $attr 根节点属性
    266  * @param string $id   数字索引子节点key转换的属性名
    267  * @param string $encoding 数据编码
    268  * @return string
    269  */
    270 function xml_encode($data, $root='think', $item='item', $attr='', $id='id', $encoding='utf-8') {}
    271 
    272 /**
    273  * 数据XML编码
    274  * @param mixed  $data 数据
    275  * @param string $item 数字索引时的节点名称
    276  * @param string $id   数字索引key转换为的属性名
    277  * @return string
    278  */
    279 function data_to_xml($data, $item='item', $id='id') {}
    280 
    281 /**
    282  * session管理函数
    283  * @param string|array $name session名称 如果为数组则表示进行session设置
    284  * @param mixed $value session值
    285  * @return mixed
    286  */
    287 function session($name,$value='') {}
    288 /**
    289  * Cookie 设置、获取、删除
    290  * @param string $name cookie名称
    291  * @param mixed $value cookie值
    292  * @param mixed $options cookie参数
    293  * @return mixed
    294  */
    295 function cookie($name, $value='', $option=null) {}
    296 
    297 /**
    298  * 加载动态扩展文件
    299  * @return void
    300  */
    301 function load_ext_file($path) {}
    302 /**
    303  * 获取客户端IP地址
    304  * @param integer $type 返回类型 0 返回IP地址 1 返回IPV4地址数字
    305  * @return mixed
    306  */
    307 function get_client_ip($type = 0) {}
    308 
    309 /**
    310  * 发送HTTP状态
    311  * @param integer $code 状态码
    312  * @return void
    313  */
    314 function send_http_status($code) {}
    315 
    316 // 过滤表单中的表达式
    317 function filter_exp(&$value) {}
    318 
    319 // 不区分大小写的in_array实现
    320 function in_array_case($value,$array) {}
    复制代码
  • 相关阅读:
    Linux系统IP地址
    系统网络概述
    系统内存和CPU管理、监控
    系统磁盘资源
    Linux与DOS的常用命令比较
    傻瓜式破解linux--rootpassword
    【iOS】彩虹渐变色 的 Swift 实现
    Spring与Hibernate整合中,使用OpenSessionInViewFilter后出现sessionFactory未注入问题
    OpenCV Haar AdaBoost源代码改进(比EMCV快6倍)
    【Hibernate步步为营】--双向关联一对一映射具体解释(一)
  • 原文地址:https://www.cnblogs.com/ZDPPU/p/6306263.html
Copyright © 2011-2022 走看看