PHP 获取执行特定行的准确时间

发布于 2024-10-27 14:13:36 字数 222 浏览 0 评论 0原文

我正在尝试对我拥有的脚本执行简单的基准测试。首先,我尝试添加类似的内容:

echo 'After Checklist: '. date('h:i:s:u A') ."<br />";

但它只是在很多时候打印出相同的时间 - 直到运行包含脚本才返回不同的时间。有办法做到这一点吗?或者类似的东西 - 我基本上只是想看看瓶颈在哪里,这样我就可以提高性能。

I'm trying to perform a simple benchmark on a script I have. First I tried to just add something like:

echo 'After Checklist: '. date('h:i:s:u A') ."<br />";

but it just prints out the same time for a lot of the times - it isn't until a includes script is ran that it returns a different time. Is there anyway to do this? Or something similar - I basically just want to see where the bottleneck is so I can increase performance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

憧憬巴黎街头的黎明 2024-11-03 14:13:36

您想要使用 microtime 函数 它将返回当前的 Unix 时间戳(以微秒为单位)。

从这里您可以对开始时间和结束时间进行简单的减法以获得所需的结果。然而,技巧是将“true”传递到函数中,以便它返回浮点值,而不是字符串。

php.net 上发布的示例如下:

<?php
$time_start = microtime(true);

// Sleep for a while
usleep(100);

$time_end = microtime(true);
$time = $time_end - $time_start;

echo "Did nothing in $time seconds\n";
?>

You want to use the microtime function which will return the current Unix timestamp with microseconds.

From here you can do simple subtraction from the start and end time to get the desired results. The trick however, is to pass in "true" into the function so it returns a float value, rather than a string.

An example, as posted on php.net is this:

<?php
$time_start = microtime(true);

// Sleep for a while
usleep(100);

$time_end = microtime(true);
$time = $time_end - $time_start;

echo "Did nothing in $time seconds\n";
?>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文