原始碼解析ThinkPHP.php

joytoy發表於2021-09-09

// +----------------------------------------------------------------------

// | [ WE CAN DO IT JUST THINK IT ]

// +----------------------------------------------------------------------

// | Copyright (c) 2006-2012 All rights reserved.

// +----------------------------------------------------------------------

// | Licensed ( )

// +----------------------------------------------------------------------

// | Author: liu21st

// +----------------------------------------------------------------------

    

// 入口檔案

// 記錄開始執行時間

$GLOBALS['_beginTime'] = microtime(TRUE);

    

// 記錄記憶體初始使用

define('MEMORY_LIMIT_ON',function_exists('memory_get_usage'));

//LIHUAN:定義常量MEMORY_LIMIT_ON,如果存在函式memory_get_usage,MEMORY_LIMIT_ON的值為1,否則為0;memory_get_usage()獲取當前記憶體值

if(MEMORY_LIMIT_ON) $GLOBALS['_startUseMems'] = memory_get_usage();//LIHUAN:如果MEMORY_LIMIT_ON的值為1,獲取:記憶體初始值$GLOBALS['_startUseMems']

// 系統目錄定義

    

defined('THINK_PATH')     or define('THINK_PATH', dirname(__FILE__).'/');

defined('APP_PATH')     or define('APP_PATH', dirname($_SERVER['SCRIPT_FILENAME']).'/');//LIHUAN:設定當前的專案路徑

defined('APP_DEBUG')     or define('APP_DEBUG',false); // 是否除錯模式,LIHUAN:預設false

if(defined('ENGINE_NAME')) {//LIHUAN:檢查是否定義了引擎擴充套件,如果定義了,則執行擴充套件引擎檔案

    defined('ENGINE_PATH') or define('ENGINE_PATH',THINK_PATH.'Extend/Engine/');//LIHUAN:引擎擴充套件目錄設定

    require ENGINE_PATH.strtolower(ENGINE_NAME).'.php';//匯入引擎檔案,ENGINE_NAME為檔名稱,字尾為.php

}

else{

    defined('RUNTIME_PATH') or define('RUNTIME_PATH',APP_PATH.'Runtime/');//LIHUAN:設定runtime的路徑

    $runtime = defined('MODE_NAME')?'~'.strtolower(MODE_NAME).'_runtime.php':'~runtime.php';//LIHUAN:定義快取檔名,如果沒有定義檔名,預設為~runtime.php

    defined('RUNTIME_FILE') or define('RUNTIME_FILE',RUNTIME_PATH.$runtime);//LIHUAN:定義檔案存放地址(帶檔名)

    if(!APP_DEBUG && is_file(RUNTIME_FILE)) {//LIHUAN:在未開啟除錯模式並且快取檔案存在的情況下,直接執行快取檔案

        // 部署模式直接載入執行快取

        require RUNTIME_FILE;

    }else{

        // 載入執行時檔案

        require THINK_PATH.'Common/runtime.php';

    } 

}

//LIHUAN:後面的內容為本人新增的註釋,其他註釋為原有內容,如有不當之處,歡迎批評指正

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4650/viewspace-2802004/,如需轉載,請註明出處,否則將追究法律責任。

相關文章