ソース読解-ThinkPHP-3-フレームエントリファイル
2427 ワード
フレームエントリファイル
この書類はどこにありますか.
この書類は何の役に立ちますか.定数 を定義するロードコアThinkクラス アプリケーション初期化 以下を見て分解してください.
定数の定義
_beginTime
運転開始時刻の記録
ここには
PHPマニュアルでは、$GLOBALS-グローバル役割ドメインで使用可能なすべての変数を参照しています.
この変数を出力してみましょう.
次のような結果が表示されます.
グローバル変数を定義するために使用できます.
上記のコードには、現在の時間を記録するために
メモリ初期使用量
プログラムの後続分析のためにメモリ量を取得します.
その他の定数
次のような定数もたくさんあります.
変数名
説明
THINK_VERSION
ThinkPHPのバージョンの定義
URL_COMMON
ルーティングを通常モードとして定義
URL_PATHINFO
ルーティングをPATHINFOモードとして定義
URL_REWRITE
ルートをREWRITEモードとして定義
URL_COMPAT
互換モードとしてルーティングを定義
EXT
クラスの接尾辞の定義
LANG_PATH
THINK_PATH
Thinkのコアライブラリのディレクトリの定義
APP_PATH
ユーザー・プログラムのディレクトリの定義
APP_STATUS
適用ステータスの定義
APP_DEBUG
開発モードにあるかどうかを定義します
RUNTIME_PATH
ランタイムディレクトリの定義
LIB_PATH
ライブラリのディレクトリの定義
CORE_PATH
コア・ライブラリのディレクトリの定義
BEHAVIOR_PATH
MODE_PATH
VENDOR_PATH
COMMON_PATH
CONF_PATH
構成ディレクトリの定義
HTML_PATH
HTMLディレクトリの定義
LOG_PATH
ログディレクトリの定義
TEMP_PATH
一時ディレクトリの定義
DATA_PATH
データディレクトリの定義
CACHE_PATH
キャッシュされたディレクトリの定義
CONF_EXT
プロファイルの拡張子の定義
CONF_PARSE
ADDON_PATH
MAGIC_QUOTES_GPC
IS_CGI
IS_WIN
Windowsシステム環境にあるかどうかを定義します
IS_CLI
コアThinkクラスのロード
コアThinkクラスはどこですか?コードの表示:
ここで、ここであなたを見ます:
初期化が適用され、ここでは
アプリケーションの初期化はどのような仕事をしましたか?下記をご覧ください.
この書類はどこにありますか.
/ThinkPHP/
ディレクトリの下にあります.この書類は何の役に立ちますか.
定数の定義
_beginTime
運転開始時刻の記録
$GLOBALS['_beginTime'] = microtime(TRUE);
ここには
$GLOBALS[]
の配列が現れた.PHPマニュアルでは、$GLOBALS-グローバル役割ドメインで使用可能なすべての変数を参照しています.
この変数を出力してみましょう.
print_f($GLOBALS);
次のような結果が表示されます.
Array ( [_GET] => Array ( )
[_POST] => Array ( )
[_COOKIE] => Array ( )
[_FILES] => Array ( )
[GLOBALS]...
);
グローバル変数を定義するために使用できます.
上記のコードには、現在の時間を記録するために
_beginTime
変数が定義されており、その後、アプリケーションの実行時間を統計します.メモリ初期使用量
//
define('MEMORY_LIMIT_ON',
function_exists('memory_get_usage'));
if(MEMORY_LIMIT_ON)
$GLOBALS['_startUseMems'] = memory_get_usage();
プログラムの後続分析のためにメモリ量を取得します.
その他の定数
次のような定数もたくさんあります.
変数名
説明
THINK_VERSION
ThinkPHPのバージョンの定義
URL_COMMON
ルーティングを通常モードとして定義
URL_PATHINFO
ルーティングをPATHINFOモードとして定義
URL_REWRITE
ルートをREWRITEモードとして定義
URL_COMPAT
互換モードとしてルーティングを定義
EXT
クラスの接尾辞の定義
LANG_PATH
THINK_PATH
Thinkのコアライブラリのディレクトリの定義
APP_PATH
ユーザー・プログラムのディレクトリの定義
APP_STATUS
適用ステータスの定義
APP_DEBUG
開発モードにあるかどうかを定義します
RUNTIME_PATH
ランタイムディレクトリの定義
LIB_PATH
ライブラリのディレクトリの定義
CORE_PATH
コア・ライブラリのディレクトリの定義
BEHAVIOR_PATH
MODE_PATH
VENDOR_PATH
COMMON_PATH
CONF_PATH
構成ディレクトリの定義
HTML_PATH
HTMLディレクトリの定義
LOG_PATH
ログディレクトリの定義
TEMP_PATH
一時ディレクトリの定義
DATA_PATH
データディレクトリの定義
CACHE_PATH
キャッシュされたディレクトリの定義
CONF_EXT
プロファイルの拡張子の定義
CONF_PARSE
ADDON_PATH
MAGIC_QUOTES_GPC
IS_CGI
IS_WIN
Windowsシステム環境にあるかどうかを定義します
IS_CLI
コアThinkクラスのロード
コアThinkクラスはどこですか?コードの表示:
require CORE_PATH.'Think'.EXT;
CORE_PATH
という定数値は、/ThinkPHP/Library/Think/
です.EXT
という定数値は、.class.php
です.ここで、ここであなたを見ます:
/ThinkPHP/Library/Think/Think.class.php
初期化の適用初期化が適用され、ここでは
Think
がクラスに対応する静的方法start
が呼び出される.Think\Think::start();
アプリケーションの初期化はどのような仕事をしましたか?下記をご覧ください.