目前大多數瀏覽器都已經支援頁面的壓縮輸出,通過壓縮輸出,頁面大小可以減少30%,但是由於3.0及以前的版本都沒有內建頁面壓縮輸出功能,所以一般來說,開發人員需要自己在入口檔案中新增:
ob_start('ob_gzhandler');
但是由於伺服器環境的不同,有時候這個配置會和php.ini檔案中的zlib壓縮配置衝突。而thinkphp3.1版則內建了頁面壓縮輸出的功能,不再需要再手動新增ob_gzhandler**,增加output_encode配置引數,並支援檢程式設計客棧測zlib.output_com程式設計客棧pression。
框架缺省會進行頁面壓縮輸出,並且會自動檢測zlib.output_compression配置,如果php.ini裡面zlib.output_compression是開啟狀態,則仍然以伺服器環境的頁面壓縮方式進行頁面壓縮。
相關**只有一行:
if(!ini_get('zlib.output_comprwww.cppcns.comession') && c('output_encode')) ob_start('ob_gzhandler');
ThinkPHP3 1新特性 Action引數繫結
action引數繫結功能提供了url變數和操作方法的引數繫結支援,這一功能可以使得你的操作方法定義和引數獲取更加清晰,也便於跨模組呼叫操作方法了。這一新特性對以往的操作方法使用沒有任何影響,你也可以用新的方式來改造以往的操作方法定義。action引數繫結的原理是把url中的引數 不包括分組 模組和操...
ThinkPHP3 1新特性 內容解析輸出
thinkphp中頁面輸出的過程是讀取模板檔案,然後進行模板解析 也支援呼叫第三方模板引擎解析 但是有一些情況,我們並沒有定義模板檔案,或者把模板檔案儲存在資料庫裡面,那麼這個時候進行頁面輸出的時候,我們是無法進行模板檔案讀取的,3.1版本則針對這樣的情況增加了內容解析輸出的功能。內建的模板引擎也進...
ThinkPHP3 1新特性 多層MVC支援
thinkphp基於mvc model view controller,模型 檢視 控制器 模式,不過均支援多層 multi layer 設計。模型 model 層 預設的模型層由model類構成,但是隨著專案的增大和業務體系的複雜化,單一的模型層很難解決要求,從3.1開始推出了多層model的支援...