[英]strange php error
我有以下代碼:
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,我將無法使其再次起作用。 從第三個請求開始,它停止工作。
它可以正常工作。 然后我改變了一些東西。 具體來說,我修改了我的應用程序以在某些地方使用DateTime類。 但這不應使此奇怪的錯誤發生。 關於如何調試的任何想法?
如果我連續兩次調用$ y_axis_max = ..代碼行,那么我會以$ y_axis_max的形式獲得此代碼:
float(@.7)
那是什么呀?
編輯:似乎早期調用DateTime :: diff會導致錯誤。 有任何解決方法嗎?
max()將在數組上工作。 看起來您的代碼中存在某種形式的損壞。 如果數組中的元素之一是NAN,則將得到此結果。 嘗試在服務器上測試較小的腳本,以便找出問題所在。
似乎更早調用DateTime :: diff會導致錯誤。 我只是使用了一種變通方法,所以不再使用它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.