替换入口
3.2版本支持根据当前的运行环境生成Lite文件,可以替换框架的入口文件或者应用入口文件,提高运行效率。
我们的建议是在生产环境中关闭调试模式后生成Lite文件。
注意,目前SAE平台不支持直接生成Lite文件。
生成Lite文件
要生成Lite文件,需要在入口文件中增加常量定义:
define("BUILD_LITE_FILE",true);
默认情况下,再次运行后会在Runtime目录下面生成一个lite.php
文件。
如果你需要修改Lite文件的位置或者名称,可以在应用配置文件中增加配置如下:
"RUNTIME_LITE_FILE"=> APP_PATH."lite.php"
配置后,生成的Lite文件的位置为 APP_PATH."lite.php"
。
Lite文件的编译文件内容是系统默认的,如果希望改变或者增加其他的编译文件的话,可以在外部定义编译列表文件,例如: 我们在应用配置目录下面增加lite.php定义如下:
return array(
THINK_PATH."Common/functions.php",
COMMON_PATH."Common/function.php",
CORE_PATH . "Think".EXT,
CORE_PATH . "Hook".EXT,
CORE_PATH . "App".EXT,
CORE_PATH . "Dispatcher".EXT,
CORE_PATH . "Model".EXT,
CORE_PATH . "Log".EXT,
CORE_PATH . "Log/Driver/File".EXT,
CORE_PATH . "Route".EXT,
CORE_PATH . "Controller".EXT,
CORE_PATH . "View".EXT,
CORE_PATH . "Storage".EXT,
CORE_PATH . "Storage/Driver/File".EXT,
CORE_PATH . "Exception".EXT,
BEHAVIOR_PATH . "ParseTemplateBehavior".EXT,
BEHAVIOR_PATH . "ContentReplaceBehavior".EXT,
);
所有在lite.php文件中定义的文件都会纳入Lite文件的编译缓存中。你还可以对生成的lite文件进行修改。
如果你修改了框架文件和应用函数和配置文件的话,需要删除Lite文件重新生成。
由于SAE等云平台不支持文件写入,因此不支持直接生成Lite文件。
替换入口
Lite文件可以用于替换框架入口文件或者应用入口文件。
替换框架入口文件
Lite文件生成后,就可以把原来的应用入口文件中的框架入口文件修改如下:
require "./ThinkPHP/ThinkPHP.php";
// 改成
require "./Runtime/lite.php";
替换Lite文件后,应用编译缓存不再需要。
替换应用入口文件
如果你的入口文件没有其他代码和逻辑的话,还可以直接把lite.php文件作为应用的入口文件访问。 把lite.php 文件复制到应用入口文件的相同目录,并直接改名为index.php即可和原来一样正常访问(原来的应用入口文件可以备份以备用于重新生成Lite文件的时候使用)。
注意:如果你的环境或者目录位置发生变化,以及更改了核心框架和应用函数、配置等文件后,则需要重新生成Lite文件。