获取 PHP 中最后一个查询的实际(绝对)执行时间(不包括网络延迟等)
我想获得实际的 Mysql 查询执行时间,而它们在我的项目中运行,因此在之前和之后运行 PHP microtime()
并减去将不起作用。
当我们在命令行中运行查询时,结果会显示如下所示的计时信息:-
xxx rows affected in YY sec
如何使用 PHP 获取相同的时间信息。我在其他问题此处,以及此处 但没有得到类似的东西。是否没有像mysql_error()
、mysql_affected_rows()
这样的PHP函数返回其他重要信息?如果不是的话为什么不存在?有什么道理吗?
有人说——
我认为这是获得执行的最佳方式 时间是使用一些程序执行 类似 exec() 或 system() 的函数。
有人有可以返回实际执行时间的 PHP 代码吗?
I want to get the actual Mysql query execution times while they run in my project so running PHP microtime()
before and after and subtracting won't work.
When we run a query in command line, the result displays the timing information something like this:-
xxx rows affected in YY sec
How to get the same time information using PHP. I searched in PHP's Mysql functions in other SO question Here,and here but did not get anything similar. Is there no such PHP function like mysql_error()
, mysql_affected_rows()
which return other important information? If not why is it not there? Any reasoning?
Someone says -
I think that best way to get execution
time is to use some program execution
functions like exec() or system().
Does anybody have a working PHP code which returns the actual execution time?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
试试这个:
第一个
if
语句为您提供查询的总体执行时间,如下所示:第二个
if
语句为您提供查询的详细执行时间。结果应该是准确的,因为您使用的是 mysql 内部分析器。
try this:
the first
if
statement gives you the overall execution time for your query like this:the second
if
statement gives you the detaild execution times of your query.The results should be exact since you are using the mysql internal profiler.