php3源码分析,ThinkPHP3.1.3源码分析(二) runtime.php

一、示例代码 runtime.php 主要 3个部分, 1、定义系统目录和项目目录 // 路径设置 可在入口文件中重新定义 所有路径常量都必须以/ 结尾defined(CORE_PATH) or define(CORE_PATH, THINK_PATH.Lib/); // 系统核心类库目录defined(EXTEND_PATH) or define(EXTEN

一、示例代码

runtime.php 主要 3个部分,

1、定义系统目录和项目目录

// 路径设置 可在入口文件中重新定义 所有路径常量都必须以/ 结尾

defined('CORE_PATH') or define('CORE_PATH', THINK_PATH.'Lib/'); // 系统核心类库目录

defined('EXTEND_PATH') or define('EXTEND_PATH', THINK_PATH.'Extend/'); // 系统扩展目录

defined('MODE_PATH') or define('MODE_PATH', EXTEND_PATH.'Mode/'); // 模式扩展目录

//省略

defined('TEMP_PATH') or define('TEMP_PATH', RUNTIME_PATH.'Temp/'); // 项目缓存目录

defined('DATA_PATH') or define('DATA_PATH', RUNTIME_PATH.'Data/'); // 项目数据目录

defined('CACHE_PATH') or define('CACHE_PATH', RUNTIME_PATH.'Cache/'); // 项目模板缓存目录

2、载入核心类和基础函数库(common.php)

// 加载系统基础函数库

require THINK_PATH.'Common/common.php';

// 读取核心文件列表

$list = array(

CORE_PATH.'Core/Think.class.php',

CORE_PATH.'Core/ThinkException.class.php', // 异常处理类

CORE_PATH.'Core/Behavior.class.php',

);

// 加载模式文件列表

foreach ($list as $key=>$file){

if(is_file($file)) require_cache($file);

}

3、创建项目目录

if(!is_dir(LIB_PATH)) {

// 创建项目目录结构

build_app_dir();

}

/*Runtime目录不存在则重新创建Runtime目录*/

elseif(!is_dir(CACHE_PATH)){

// 检查缓存目录

check_runtime();

}elseif(APP_DEBUG){

// 调试模式切换删除编译缓存

if(is_file(RUNTIME_FILE)) unlink(RUNTIME_FILE);

}

最后就是调用 Think.class.php 中的

Think::Start();

二、值得说的编程小细节:

// 为了方便导入第三方类库 设置Vendor目录到include_path

set_include_path(get_include_path() . PATH_SEPARATOR . VENDOR_PATH);举例: some.class.php 在 /a/b/c/include 目录下

那么在 引入类文件 include '/a/b/c/include/some.class.php';

如果定义了 set_include_path('/a/b/c/include');

只需 include 'some.class.php';

即可

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值