ThinkPHP3.1.3源码分析(二) runtime.php
Jun 06, 2016 pm 08:02 PM
分析する
ソースコード
一、示例代码 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);
ログイン後にコピー
那么在 引入类文件 include '/a/b/c/include/some.class.php';
如果定义了 set_include_path('/a/b/c/include');
只需 include 'some.class.php'; 即可
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
2週間前
By 尊渡假赌尊渡假赌尊渡假赌
レポ:チームメイトを復活させる方法
4週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?
3週間前
By DDD

人気の記事
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
2週間前
By 尊渡假赌尊渡假赌尊渡假赌
レポ:チームメイトを復活させる方法
4週間前
By 尊渡假赌尊渡假赌尊渡假赌
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
R.E.P.O.ファイルの保存場所:それはどこにあり、それを保護する方法は?
3週間前
By DDD

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7313
9


Java チュートリアル
1625
14


CakePHP チュートリアル
1348
46


Laravel チュートリアル
1260
25


PHP チュートリアル
1207
29



DreamWeaver CMS のセカンダリディレクトリを開けない原因の分析

ThinkPHP6 コードのパフォーマンス分析: パフォーマンスのボトルネックの特定

PHPコードのソースコードを解釈・実行せずにブラウザに表示するにはどうすればよいでしょうか?

TP6 Think-Swoole RPC サービスのパフォーマンス分析と最適化戦略

Golang フレームワークのソース コードを学習して適用するための包括的なガイド
