CodeIgniter 程序分析

2018-07-21 15:38 更新

程序分析

分析器類會在頁面下方顯示基準(zhǔn)測試結(jié)果,運(yùn)行過的 SQL 語句, 以及 $_POST 數(shù)據(jù)。這些信息有助于開發(fā)過程中的調(diào)試和優(yōu)化。

初始化類

重要

這個類無須初始化,如果已按照下面的方式啟用, 他將被 輸出類 自動加載。

啟用分析器

要啟用分析器,你可以在你的 控制器 方法的任何位置添加一行下面的代碼:

$this->output->enable_profiler(TRUE);

當(dāng)啟用之后,將會生成一份報告插入到頁面的最底部。

使用下面的方法禁用分析器:

$this->output->enable_profiler(FALSE);

設(shè)置基準(zhǔn)測試點(diǎn)

為了讓分析器編譯并顯示你的基準(zhǔn)測試數(shù)據(jù),你必須使用特定的語法 來命名基準(zhǔn)點(diǎn)。

請閱讀 基準(zhǔn)測試類 中關(guān)于設(shè)置基準(zhǔn)點(diǎn)的資料。

啟用和禁用分析器中的字段

分析器中的每個字段都可以通過設(shè)置相應(yīng)的控制變量為 TRUE 或 FALSE 來啟用或禁用。有兩種方法來實(shí)現(xiàn),其中的一種方法是: 在application/config/profiler.php 文件里設(shè)置全局的默認(rèn)值。

例如:

$config['config']          = FALSE;
$config['queries']         = FALSE;

另一種方法是:在你的控制器里通過調(diào)用 輸出類 的 set_profiler_sections() 函數(shù)來覆蓋全局設(shè)置和默認(rèn)設(shè)置:

$sections = array(
    'config'  => TRUE,
    'queries' => TRUE
);

$this->output->set_profiler_sections($sections);

下表列出了可用的分析器字段和用來訪問這些字段的 key 。

Key Description Default
benchmarks 在各個計時點(diǎn)花費(fèi)的時間以及總時間 TRUE  
config CodeIgniter 配置變量 TRUE  
controller_info 被請求的控制器類和調(diào)用的方法 TRUE  
get 請求中的所有 GET 數(shù)據(jù) TRUE  
http_headers 本次請求的 HTTP 頭部 TRUE  
memory_usage 本次請求消耗的內(nèi)存(單位字節(jié)) TRUE  
post 請求中的所有 POST 數(shù)據(jù) TRUE  
queries 列出所有執(zhí)行的數(shù)據(jù)庫查詢,以及執(zhí)行時間 TRUE  
uri_string 本次請求的 URI TRUE  
session_data 當(dāng)前會話中存儲的數(shù)據(jù) TRUE  
query_toggle_count 指定顯示多少個數(shù)據(jù)庫查詢,剩下的則默認(rèn)折疊起來 25  

注解

在你的數(shù)據(jù)庫配置文件中禁用 save_queries 參數(shù) 也可以禁用數(shù)據(jù)庫查詢相關(guān)的分析器,上面說的 'queries' 字段就沒用了。 你可以通過$this->db->save_queries = TRUE; 來覆寫該設(shè)置。 另外,禁用這個設(shè)置也會導(dǎo)致你無法查看查詢語句以及 last_query  。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號