-1

我正在使用 jQuery ajax 显示数据表。我包含一个文件,第一次需要 2.5 秒。有点随意。我不知道为什么会这样。有人有任何线索吗?

在 windows 7 中的本地 apache 服务器中运行。是因为我的电脑在做某事还是因为我的硬盘碎片?我已经对我的硬盘进行碎片整理了。碎片是 0%。那么还有什么?有人遇到过这个问题吗?

问题是在我到达那部分代码之前我有很多包含。其中包括永远不会这么慢。我正在使用代码点火器框架。它包括许多文件。我什至放了完整的路径来找出它为什么会产生问题。徒劳无功。

$time_start = microtime_float();

include $plugindir."/resources/queries/$queryname".".php";

$time_end = microtime_float();
echo "elapsed seconds1 $time_end  $time_start  : ".($time_end-$time_start). " seconds";

并非总是如此。主要是第一次。有点怪。

4

2 回答 2

2

您计算的不是实际包含时间,而是包含+执行时间。因此,所需的时间很大程度上取决于您在包含文件中所做的事情。您很可能在此文件中有一些长时间运行的数据库查询。
还有一件事。include $plugindir."/resources/queries/$queryname".".php";如果您不检查$queryname任何可能的注射,使用是非常不安全的。

于 2013-03-27T22:51:02.077 回答
1

如果您使用的是 xdebug,请尝试在 php.ini 中更改此行:

xdebug.remote_enable=on 

对此:

xdebug.remote_enable=off

如果您通过 localhost 连接,请改用 127.0.0.1,这似乎是Windows 8上经常出现的问题,但总是值得一试!

于 2013-03-27T22:58:58.723 回答