我有以下代码:
var_dump($cumulitive);
$y_axis_max = max($cumulitive)*1.3;
var_dump($y_axis_max);
输出以下内容:
array(16) {
[0]=>
int(0)
[1]=>
int(0)
[2]=>
int(0)
[3]=>
int(0)
[4]=>
int(0)
[5]=>
int(0)
[6]=>
int(0)
[7]=>
int(0)
[8]=>
int(0)
[9]=>
int(0)
[10]=>
int(0)
[11]=>
int(4)
[12]=>
int(4)
[13]=>
int(4)
[14]=>
int(9)
[15]=>
int(9)
}
float(NAN)
如您所见,$ y_axis_max正在给出NAN。所以我试试这个:我重新启动WampServer。它现在有效。我刷新浏览器。再次工作。再次刷新浏览器。现在它不起作用,如果不重新启动Apache,我无法再次使用它。从它的第3个请求停止工作。
它用于工作得很好。然后我改变了一些东西。具体来说,我修改了我的应用程序以在几个地方使用DateTime类。但这不应该发生这种奇怪的错误。关于如何调试这个的任何想法?
如果我连续两次调用$ y_axis_max = ..代码行,那么我得到$ y_axis_max:
float(@.7)
那到底是什么?
编辑:似乎早先调用DateTime :: diff会导致错误。任何解决方法的想法?
答案 0 :(得分:1)
max()将适用于数组。看起来您的代码中存在某种形式的损坏。如果数组中的一个元素是NAN,您将得到此结果。尝试在服务器上测试较小的脚本以隔离问题。
答案 1 :(得分:1)
似乎早先调用DateTime :: diff会导致错误。我只是使用了一种解决方法,所以不要使用它。