php函数直接返回数组的方法是最慢的

缓存文件,大家用的最多的估计就是 return array();

www.phperz.com

实验证明,这种方法是较慢的,试考查以下的3个文件.

www~phperz~com

其一. $arr.php 直接返回 数组 php程序员之家

<?php
return Array
(
    "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
);
?>

www~phperz~com

其二,  ini.php 为INI文件

www.phperz.com

<?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
其三,str.php 为序例化后的数组 phperz.com

<?php
return
'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";}';
?>

php程序员之家

分别对3个文件  进行10000次包含返回数组测试

phperz.com

$t1 = microtime(true);

www.phperz.com

$file1 = './arr.php';
$file2 = './ini.php';
$file3 = './str.php'; php程序员站

for($i=0; $i<10000; $i++){
//$arr  = require $file1;
//$arr  = parse_ini_file($file2);
$arr  = unserialize(require $file3);
} php程序员站

$t2 = microtime(true);
echo $t2-$t1; www~phperz~com

得出结果:

phperz.com

arr.php       5.7820551395416

php程序员之家

ini.php        5.3364160060883

phperz~com

str.php        5.5691919326782 www.phperz.com

其中,排得最快的居然是 INI文件.

www~phperz~com

其次是序列化, 最慢的是直接 return 数组 www~phperz~com

结论:

php程序员之家

   ini 文件不错,方便书写(可以考虑) php程序员之家

   保存数组, 用序列化! php程序员站

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值