ファイルをキャッシュするには、おそらく return array() が使用されます。
実験
により、$arr.php は配列
<?php を
直接返します。
配列を返す
(
"db_host1" => 123、
"db_host2" => 123、
"db_host3" => 123、
"db_host4" => 123、
"db_host5" => 123、
"db_host6" => 123、
"db_host7" => 123、
"db_host8" => 123、
"db_host9" => 123、
"db_host10" => 123、
"db_host11" => 123、
"db_host12" => 123、
"db_host13" => 123、
"db_host14" => 123、
"db_host15" => 123、
"db_host16" => 123
);
?>
次に、ini.php は INI ファイルです
<?php exit;?>
db_host1 =123
db_host2 =123
db_host3 =123
db_host4 =123
db_host5 =123
db_host6 =123
db_host7 =123
db_host8 =123
db_host9 =123
db_host10 =123
db_host11 =123
db_host12 =123
db_host13 =123
db_host14 =123
db_host15 =123
db_host16 =123
3 番目に、str.php はシリアル化された配列
<?php
です。
戻る
'a:16:{s:8:"db_host1";s:3:"123";s:8:"db_host2";s:3:"123";s:8:"db_host3";s:3: "123";s:8:"db_host4";s:3:"123";s:8:"db_host5";s:3:"123";s:8:"db_host6";s:3:"123 ";s:8:"db_host7";s:3:"123";s:8:"db_host8";s:3:"123";s:8:"db_host9";s:3:"123"; s:9:"db_host10";s:3:"123";s:9:"db_host11";s:3:"123";s:9:"db_host12";s:3:"123";s: 9:"db_host13";s:3:"123";s:9:"db_host14";s:3:"123";s:9:"db_host15";s:3:"123";s:9: "db_host16";s:3:"123";}';
?>
返された配列
$t1 = microtime(true);
を含む 3 つのファイルに対して 10,000 回のテストを実行します。
$file2 = './ini.php';
$file3 = './str.php';
for($i=0; $i<10000; $i++){
//$arr = $file1 が必要;
//$arr = parse_ini_file($file2);
$arr = unserialize($file3 が必要);
$
t2 = マイクロタイム(true);
echo $t2-$t1;
結果は次のとおりです:
arr.php 5.7820551395416
ini.php 5.3364160060883
str.php 5.5691919326782
この中で最も速いのは
INI ファイルで、
最も遅いのは direct return array です
。:
ini ファイルは優れており、書き込みも簡単です (
配列を保存してシリアル化を使用することを検討できます。