【发布时间】:2012-08-03 09:18:35
【问题描述】:
我正在测试 SplFixedArray 构建一个包含星期几的数组,我得到以下结果:
<?php
$days = new SplFixedArray(7);
$days[0] = "Monday";
$days[1] = "Tuesday";
$days[2] = "Wednesday";
$days[3] = "Thursday";
$days[4] = "Friday";
$days[5] = "Saturday";
$days[6] = "Sunday";
echo memory_get_peak_usage() . "\n"; //Returns 327688
echo memory_get_usage() . "\n"; //Returns 327140
echo memory_get_peak_usage(true) . "\n"; //Returns 524288
echo memory_get_usage(true) . "\n"; //Returns 524288
使用传统数组:
<?php
$days = array();
$days[0] = "Monday";
$days[1] = "Tuesday";
$days[2] = "Wednesday";
$days[3] = "Thursday";
$days[4] = "Friday";
$days[5] = "Saturday";
$days[6] = "Sunday";
echo memory_get_peak_usage() . "\n"; //Returns 327528
echo memory_get_usage() . "\n"; //Returns 326820
echo memory_get_peak_usage(true) . "\n"; //Returns 524288
echo memory_get_usage(true) . "\n"; //Returns 524288
这对你有意义吗?
【问题讨论】:
-
你创建的对象和数组...你想要什么???
-
数组可能太小而无法理解差异。尝试对更大的数组进行基准测试,这就是 SplFixedArray 的用途。
标签: php arrays performance spl