【发布时间】:2011-10-17 23:17:21
【问题描述】:
根据 PHP 手册中的gmmktime() description,它在内部使用 mktime()。然而,当我运行以下代码时,mktime 循环的运行时间不到 9 秒,而 gmmktime 的运行时间不到 2 秒。这怎么可能?
<?php
$count = 1000000;
$startTime = microtime(true);
for ($i = 0; $i < $count; $i++)
{
mktime();
}
$endTime = microtime(true);
printf("mktime: %.4f seconds\n", $endTime - $startTime);
$startTime = microtime(true);
for ($i = 0; $i < $count; $i++)
{
gmmktime();
}
$endTime = microtime(true);
printf("gmmktime: %.4f seconds\n", $endTime - $startTime);
输出:
mktime: 8.6714 seconds
gmmktime: 1.6906 seconds
【问题讨论】:
标签: php performance micro-optimization