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文件。