【发布时间】:2013-07-28 16:03:09
【问题描述】:
如何在 PHP 中确定查询数据库需要多长时间?
例如:
$query = mysql_query("SELECT * FROM table");
在上面的例子中做了一个简单的查询,我想要的是返回服务器花费的时间
【问题讨论】:
-
@A.S.Roma 不完全是,该问题的答案使用 MS 特定命令,不能与 PHP 或 MySQL 一起使用
如何在 PHP 中确定查询数据库需要多长时间?
例如:
$query = mysql_query("SELECT * FROM table");
在上面的例子中做了一个简单的查询,我想要的是返回服务器花费的时间
【问题讨论】:
像这样:
// Save time
$msc = microtime(true);
// Operation
$query = 'SELECT * FROM table';
mysql_query($query);
// Calculate the difference
$msc = microtime(true) - $msc;
echo $msc . ' seconds'; // In seconds
echo ($msc*1000) . ' milliseconds'; // In millseconds
【讨论】:
您可以使用SQL命令NOW()获取执行时间,如下:
SELECT *, NOW() FROM table
这将返回所有行,并将执行时间作为最后一个附加列。
这个查询可以在任何可以调用 SQL 的编程语言中工作,所以在 PHP 中你需要:
$query = mysql_query("SELECT *, NOW() FROM table");
【讨论】:
如果您只是想测量此查询所用的总时间(包括 MySQL 连接设置和网络迂回时间),请执行以下操作:
$start = microtime();
// Run Query
$end = microtime();
$qtime = ($end - $start);
【讨论】: