易腾动力社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7379|回复: 0
打印 上一主题 下一主题

Cake’s Global Constants and Functions Cake的全局常量及方法

[复制链接]
跳转到指定楼层
楼主
发表于 2017-6-12 17:52:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Section 1 全局方法
    这些都是Cake领域内全局可用的方法。它们中有很多是对PHP长名方法更便利的包装,但是也有一些方法(比如verdor()和uses())可以用来包含代码,或者执行其他有用的功能。如果你想有一个短小精悍的方法来做一些烦人的事情,这里就可以找到答案。
  1. config
复制代码
读取Cake的核心配置文件。如果成功,返回true。
  1. uses
  2.     string $lib1
  3.     string $lib2
复制代码
用来载入Cake的核心类库(位于cake/libs/)。你需要提供不包含扩展名’.php’的类库文件名。
  1. uses(‘sanitize’, ‘security’);
复制代码
  1. vendor
  2.     string $lib1
  3.     string $lib2…
复制代码
用来载入位于/vendors目录下的外部类库。你需要提供不包含扩展名’.php’的类库文件名。
  1. vendor('myWebService', 'nusoap');
复制代码
  1. debug
  2.     mixed $var
  3.     Boolean $showHtml = false
复制代码
如果应用程序的DEBUG等级被设置为非零的数字,$var的值将被输出。如果$showHtml的值为true,将在浏览器上显示友好的数据信息。
  1. a
复制代码
将传入此包装方法(译注:wrapping function,可以将多个参数打包成单一的数组)的所有参数打包成一个单一数组,并返回这个数组。
  1. function someFunction(){
  2.     echo print_r(a('foo', 'bar'));
  3. }
  4. someFunction();

  5. // output:
  6. array(
  7.     [0] => 'foo',
  8.     [1] => 'bar'
  9. )
复制代码
  1. aa
复制代码
将传入此包装方法的所有参数打包成一个关联数组,并返回这个数组。
  1. echo aa('a','b');

  2. // output:
  3. array(
  4.     'a' => 'b'
  5. )
复制代码
  1. e
  2.     string $text
复制代码
对方法echo()的包装,使用起来更加方便。
  1. low
复制代码
对方法strtolower()的包装,使用起来更加方便。
  1. up
复制代码
对方法strtoupper()得包装,使用起来更加方便。
  1. r
  2.     string $search
  3.     string $replace
  4.     string $subject
复制代码
对方法str_replace()得包装,使用起来更加方便。
  1. pr
  2.     mixed $data
复制代码
一个方便的方法,它等同于:
  1. echo "<pre>" . print_r($data) . "</pre>";
复制代码
只有当DEBUG被设置为非零时它才会输出信息。
  1. am
  2.    array $array1
  3.    array $array2…
复制代码
将所有参数数组合并,并返回得到的新数组。
  1. env
  2.     string $key
复制代码
可以从任何可用的资源获取到一个环境变量的值。你可以把它看成$_SERVER或$_ENV的后备(某些情况下,这两个变量也许会被禁用)。
  1. cache
  2.     string $path
  3.     string $expires
  4.     string $target = ‘cache’
复制代码
将$data里的数据(译注:原文中这里并没有出现$data参数,是否是原作者漏写了?)以缓存形式写入/app/tmp下由$path指定的目录中。由$expires指定的超时时间必须是一个有效的strtotime()字符串。缓存数据的$target(目标)可以为’cache’(缓存)或者’public’(公共数据)。
  1. clearCache
  2.     string $search
  3.     string $path = ‘views’
  4.     string $ext
复制代码
用来删除缓存目录下的文件,或者说清空缓存目录下的内容。
    如果$search是一个字符串,名字与之相匹配的缓存目录或文件会从缓存中被移除。$search也可以是一个数组,这个数组由需要清除的文件或目录的名字组成。如果为空,/app/tmp/cache/views下的所有文件都将被清除。            $path参数用来指定/tmp/cache的哪个目录将被清除。默认为’views’。 $ext参数用来指定你想清除的文件的扩展名。
  1. stripslashes_deep
  2.     array $array
复制代码
递归地将数组所包含的数据里所有斜杠(’/’)去掉(译注:如果该数组里还包含数组元素,将自动递归地对这些数组调用这个方法)。
  1. countdim
  2.     array $array
复制代码
以数字的形式返回数组$array的维度。
  1. fileExistsInPath
  2.     string $file
复制代码
在当前路径下搜索指定的文件。如果找到该文件,返回其路径;否则返回false。
  1. convertSlash
  2.     string $string
复制代码
将指定字符串里的反斜杠(’\’)转换成下划线(’_’),并且去掉的第一个和最后一个下划线。

Section 2 CakePHP内核定义的常量
        
  • ACL_CLASSNAME:当前正在运行并管理CakePHP ACL的类的类名。这个常量是为了在适当的时候可以被用来整合第三方的类。
  • ACL_FILENAME:包含ACL_CLASSNAME类的文件的文件名。
  • AUTO_SESSION:如果设为false,在处理对应用程序的请求时不会自动调用session_start()。
  • CACHE_CHECK:如果设为false,在整个应用程序范围内对view不使用缓存。
  • CAKE_SECURITY:按照CAKE_SESSION_TIMEOUT来决定应用程序的session(会话状态)安全等级(译注:原文中这里本是“accorance”一词,但这个单词在字典里并不存在,笔者认为这里应该是“accordance”)。它可以被设为’low’,’medium’或者’high’。依赖于这个设置,CAKE_SESSION_TIMEOUT将按照下面的规则变化:
    • low:300
    • medium:100
    • high:10
             
  • CAKE_SESSION_COOKIE:应用程序的客户端cookie的名称。
  • CAKE_SESSION_SAVE:可以设为’php’,’file’或者’database’:
    • php:Cake使用PHP的默认session处理方式(通常被定义在php.ini里)。
    • file:session数据将被储存并管理在/tmp目录下。
    • database:使用Cake的数据库session处理(详见“The Cake Session Component”(“Cake的session组件”)一章)
             
  • CAKE_SESSION_STRING:一个用于session管理的随机字符串。
  • CAKE_SESSION_TABLE:储存session数据的表名(如果CAKE_SESSION_SAVE == ’database’)。不要在这里包含表名的前缀,如果你为默认数据库连接已经指定过一个前缀了。
  • CAKE_SESSION_TIMEOUT:一个session超时所需的持续非活动时间(秒)。这个数字由CAKE_SECURITY决定。
  • COMPRESS_CSS:如果设为true,CSS样式表将在输出的时候被压缩。想这样做的话,必须让web服务器具有对/var/cache目录的写入权限。在使用的时候,用/ccss(而不是/css)来引用你的样式表,或者使用Controller::cssTag()。
  • DEBUG:定义由CakePHP程序render的错误报告和调试(debug)输出的等级。可以设置为0到3之间的整数:
    • 0:正式运行模式(Production mode)。没有错误输出,也不会显示调试信息。
    • 1:开发模式(Development mode)。警告和错误都将被显式,并且包括调试信息。
    • 2:和1一样,但是具有SQL输出。
    • 3:和2一样,但是会输出当前对象的完整内存(堆内存)情况(通常是Controller)。
             
  • LOG_ERROR:错误常量。用来区分错误日志和错误调试活动。目前PHP支持LOG_DEBUG。
  • MAX_MD5SIZE:用来控制执行md5()哈希加密的最大输出长度(字节)。
  • WEBSERVICES:如果设为true,Cake的内置webservices功能将被打开。

Section 3 CakePHP的路径常量
        
  • APP:应用程序所处目录的路径。
  • APP_DIR:当前应用程序的app目录的目录名。
  • APP_PATH:应用程序app目录的绝对路径。
  • CACHE:缓存文件所在目录的路径。
  • CAKE:应用程序的Cake目录的路径。
  • COMPONENTS:应用程序的components目录的路径。
  • CONFIGS:配置文件目录的路径。
  • CONTROLLER_TESTS:controller tests目录的路径。
  • CONTROLLERS:应用程序的所有controller所在目录的路径。
  • CSS:CSS文件所在目录的路径。
  • ELEMENTS:elements目录的路径。
  • HELPER_TESTS:helper tests目录的路径。
  • HELPERS:helpers目录的路径。
  • INFLECTIONS:inflections目录的路径(通常在configuration目录之下)。
  • JS:JavaScript文件所在目录的路径。
  • LAYOUTS:layouts目录的路径。
  • LIB_TESTS:Cake类库tests目录的路径。
  • LIBS:Cake libs目录的路径。
  • LOGS:logs目录的路径。
  • MODEL_TESTS:model tests目录的路径。
  • MODELS:models目录的路径。
  • SCRIPTS:Cake scripts目录的路径。
  • TESTS:tests目录的路径(该目录为models,controller等等tests目录的父目录)。
  • TMP:tmp目录的路径。
  • VENDORS:vendors目录的路径。
  • VIEWS:views目录的路径。

Section 4 CakePHP 网站根目录(Webroot)配置的路径
        
  • CORE_PATH:Cake核心类库所在目录的路径。
  • WWW_ROOT:应用程序的webroot目录的路径(通常在/cake/下)。
  • CAKE_CORE_INCLUDE_PATH:Cake核心类库所在目录的路径。
  • ROOT:CakePHP的index.php文件所在目录的路径。
  • WEBROOT_DIR:应用程序webroot目录的目录名。

http://docs.30c.org/cakephp/globalconstants.html
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|易腾动力 ( 粤ICP备12094338号 )

GMT+8, 2025-5-4 11:48 , Processed in 0.053237 second(s), 18 queries .

Powered by Discuz! X3

© 2001-2024 Yidz Inc.

快速回复 返回顶部 返回列表