thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法


Posted in PHP onMay 21, 2015

本文实例讲述了thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法。分享给大家供大家参考。具体分析如下:

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

希望本文所述对大家的基于ThinkPHP框架的php程序设计有所帮助。

PHP 相关文章推荐
有关 PHP 和 MySQL 时区的一点总结
Mar 26 PHP
一步一步学习PHP(8) php 数组
Mar 05 PHP
php数组函数序列之array_flip() 将数组键名与值对调
Nov 07 PHP
php中使用$_REQUEST需要注意的一个问题
May 02 PHP
使用PHP备份MySQL和网站发送到邮箱实例代码
Nov 28 PHP
thinkphp3查询mssql数据库乱码解决方法分享
Feb 11 PHP
PHP实现采集中国天气网未来7天天气
Oct 15 PHP
PHP链接MySQL的常用扩展函数
Oct 23 PHP
php实现转换html格式为文本格式的方法
May 16 PHP
PHP中获取文件创建日期、修改日期、访问时间的方法
Nov 05 PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
Feb 18 PHP
PHP页面静态化――纯静态与伪静态用法详解
Jun 05 PHP
php通过exif_read_data函数获取图片的exif信息
May 21 #PHP
PHP图像处理类库MagickWand用法实例分析
May 21 #PHP
php使用标签替换的方式生成静态页面
May 21 #PHP
php eval函数一句话木马代码
May 21 #PHP
php结合正则批量抓取网页中邮箱地址
May 19 #PHP
php实现模拟登陆方正教务系统抓取课表
May 19 #PHP
PHP IDE phpstorm 常用快捷键
May 18 #PHP
You might like
Banner程序
2006/10/09 PHP
php命令行(cli)模式下报require 加载路径错误的解决方法
2015/11/23 PHP
php简单统计中文个数的方法
2016/09/30 PHP
很酷的javascript loading效果代码
2008/06/18 Javascript
javascript 日期常用的方法
2009/11/11 Javascript
javascript 处理事件绑定的一些兼容写法
2009/12/24 Javascript
过虑特殊字符输入的js代码
2010/08/05 Javascript
jQuery常用的一些技巧汇总
2016/03/26 Javascript
jQuery Ajax 异步加载显示等待效果代码分享
2016/08/01 Javascript
Vue导出页面为PDF格式的实现思路
2018/07/31 Javascript
JavaScript的词法结构精华篇
2018/10/17 Javascript
记一次vue-webpack项目优化实践详解
2019/02/17 Javascript
vue-cli打包后本地运行dist文件中的index.html操作
2020/08/12 Javascript
Vue 列表页带参数进详情页的操作(router-link)
2020/11/13 Javascript
python 动态加载的实现方法
2017/12/22 Python
Sublime开发python程序的示例代码
2018/01/24 Python
Python随机函数random()使用方法小结
2018/04/29 Python
Python系统监控模块psutil功能与经典用法分析
2018/05/24 Python
Flask框架信号用法实例分析
2018/07/24 Python
Python 实现微信防撤回功能
2019/04/29 Python
对Python中TKinter模块中的Label组件实例详解
2019/06/14 Python
详解python 降级到3.6终极解决方案
2020/02/06 Python
关于Keras Dense层整理
2020/05/21 Python
关于Python 解决Python3.9 pandas.read_excel(‘xxx.xlsx‘)报错的问题
2020/11/28 Python
捷克领先的户外服装及配件市场零售商:ALPINE PRO
2018/01/09 全球购物
Nicole Miller官方网站:纽约女装品牌
2019/09/14 全球购物
高级护理专业大学生求职信
2013/10/24 职场文书
工程业务员工作职责
2013/12/07 职场文书
心理健康教育心得体会
2013/12/29 职场文书
五星级酒店餐饮部总监的标准岗位职责
2014/02/17 职场文书
保密普查工作实施方案
2014/02/25 职场文书
群众路线教育党课主持词
2014/04/01 职场文书
检讨书1000字
2014/10/11 职场文书
校园安全教育心得体会
2016/01/15 职场文书
自定义函数实现单词排序并运用于PostgreSQL(实现代码)
2021/04/22 PostgreSQL
用golang如何替换某个文件中的字符串
2021/04/25 Golang