小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

ThinkPHP編譯機(jī)制

 quasiceo 2014-01-16

ThinkPHP編譯機(jī)制

(2011-10-15 15:27:03)

項目編譯

項目編譯機(jī)制是指系統(tǒng)第一次運(yùn)行的時候會自動生成核心緩存文件~runtime.php和項目編譯緩存文件~app.php。

這些編譯緩存文件把核心和項目必須的文件打包到一個文件中,并且去掉所有空白和注釋代碼,因為存在一個預(yù)編譯的過程,所以還會進(jìn)行一些相關(guān)的目錄檢測,對于不存在的目錄可以自動生成,這個自動生成機(jī)制后面還會提到。

當(dāng)?shù)诙螆?zhí)行的時候就會直接載入編譯過的緩存文件,從而省去很多IO開銷,加快執(zhí)行速度。項目編譯機(jī)制對運(yùn)行沒有任何影響,預(yù)編譯操作和其他的目錄檢測機(jī)制只會執(zhí)行一次,因此無論在預(yù)編譯過程中做了多少復(fù)雜的操作,對后面的執(zhí)行沒有任何效率的缺失。

~runtime.php包含的文件由系統(tǒng)的core.php文件決定,如果是采用了模式擴(kuò)展的話,就由模式擴(kuò)展入口文件決定。默認(rèn)的核心模式下面包含了下面的一些文件:系統(tǒng)定義文件defines.php、系統(tǒng)函數(shù)庫functions.php、系統(tǒng)基類Think、異?;?span xml:lang="EN-US" lang="EN-US">ThinkException、日志類 Log、應(yīng)用類 App、控制器基類 Action、視圖類 View。

其他類庫可以在操作方法中使用系統(tǒng)導(dǎo)入機(jī)制或者自動加載機(jī)制完成加載。

~app.php 通常包含了下面的一些文件:項目配置文件(由慣例配置、項目配置合并而成)、項目公共函數(shù)文件common.php。每個項目還可以單獨(dú)添加自己的項目編譯文件列表,只需要在項目配置目錄下面定義app.php文件,返回需要額外添加到項目編譯緩存的文件列表數(shù)組即可。


【入口文件index.php中設(shè)置】

編譯緩存文件,默認(rèn)是自動生成在項目目錄下面的Runtime目錄下面。、

define('RUNTIME_PATH','./MyApp/temp/'); //如果希望自己設(shè)置目錄,可以在入口文件里面設(shè)置RUNTIME_PATH進(jìn)行更改

注意在Linux環(huán)境下面需要對RUNTIME_PATH目錄設(shè)置可寫權(quán)限。


注意在調(diào)試模式下面不會生成項目編譯緩存,但是依然會生成核心緩存

define('NO_CACHE_RUNTIME',True);  //不希望生成核心緩存文件的話

define('STRIP_RUNTIME_SPACE',false); //設(shè)置對編譯緩存的內(nèi)容是否進(jìn)行去空白和注釋

則生成的編譯緩存文件是沒有經(jīng)過去注釋和空白的,僅僅是把文件合并到一起,這樣的好處是便于調(diào)試的錯誤定位,建議部署模式的時候把上面的設(shè)置為True或者刪除該定義。


    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多