método
mais comumente usado é provavelmente return array();
experimentos provaram que este método é mais lento. Experimente os três arquivos a seguir
.
matriz de retorno
(
"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
);
?>
Segundo, ini.php é um arquivo 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
Terceiro, str.php é o array serializado
<?php
retornar
'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";}';
?>
Realize 10.000 testes em 3 arquivos, cada um incluindo o array retornado
$
t1 = microtime(true);
$arquivo2 = './ini.php';
$arquivo3 = './str.php';
for($i=0; $i<10000; $i++){
//$arr = requer $arquivo1;
//$arr = parse_ini_file($arquivo2);
$arr = desserializar(requer $arquivo3);
}
$t2 = microtempo(verdadeiro);
echo $t2-$t1;
Os resultados são:
arr.php 5.7820551395416
ini.php
5.3364160060883
str.php 5.5691919326782
Entre eles, o mais rápido é o arquivo INI.
O segundo é a serialização e o mais lento é o array de retorno direto
.:
ini O arquivo é bom e fácil de escrever (você pode considerar
salvar o array e usar a serialização!