2013-05-17 70 views
2

我不知道什麼是速度快:PHP INI VS陣列性能

  • 裝載/包括包含在數組中的函數中,一些靜態數據
  • 解析ini文件包含數據的PHP文件並把它放入一個文件

我需要知道我的配置文件,其中一些可以真的很大。

編輯:

我有一個數組和ini文件與10.000值每 現在測試並得出如下結果:

  • 靜態數據了0.0072767734527588完成
  • INI文件花了0.01829195022583加載和解析

回答

2

這將計算處理每個文件/數據集需要多長時間。

function staticDataCalc() 
{ 
    $start = microtime(true); 

    /** LOAD AND PARSE YOUR PHP FILE WITH STATIC DATA **/ 

    $end = microtime(true); 
    $totalTimeTaken = $end - $start; 

    echo 'Static Data took ' . $totalTimeTaken . ' to complete'; 
} 


function iniFileCalc() 
{ 
    $start = microtime(true); 

    /** LOAD AND PARSE YOUR INI FILE **/ 

    $end = microtime(true); 
    $totalTimeTaken = $end - $start; 

    echo 'INI file took ' . $totalTimeTaken . ' to load and parse'; 
} 

echo staticDataCalc() . '<br />'; 
echo iniFileCalc(); 
+0

謝謝你的「testmodule」。 我測試了一下,結果如下: 靜態數據花了0.0072767734527588來完成,INI文件花了0.01829195022583來加載和解析:) – emfi

+0

哪個會提示加載靜態數據花了0。01秒更快加載:) –

0

如果你需要這個全局配置,然後創建與陣列中的文件,並獲取它的值用函數並傳遞密鑰作爲參數將是好的,快則ini文件。

0

隨着字節碼緩存,包含php文件會更快。

2

我會放棄拇指到PHP INI ...由於以下點..

  1. 使用其他語言(如Perl,Python和Ruby等)的單個文件。
  2. 編輯數據。 INI格式是很多比PHP代碼的那麼可怕,哪怕只是一堆變量聲明

  3. 容易更新設置的。 我認爲創建一個新的INI文件比寫一個PHP文件容易得多。

  4. 容易使設定變量之間的關係。 很容易給你的設置一個INI文件的層次結構。雖然這對於PHP來說也是可能的,但如果您嘗試使用深度嵌套的關聯數組來存儲信息,那麼它就不那麼整潔,並且可能會變得難看。

+0

廣告1:我只是使用它的PHP和根據我的問題只有PHP是相對的;廣告2&3:我認爲沒關係:);廣告4:好吧,在大多數情況下,你不會使用「深層嵌套的關聯數組」來表示配置文件,我認爲...... – emfi