2
我的腳本從命令行運行,在循環內部進行大量數據庫和API調用,但爲了測試我必須更改條件並放置die()
並反覆運行腳本。使用PHP的斷點
有沒有什麼辦法可以在按下Return
時提前迭代,按Esc
就結束腳本執行,否則只要等到它發生以上輸入事件?
$arr = range(0, 10000);
foreach ($arr as $n) {
// if ENTER
echo $n;
// elseif ESC
die()
// else
// wait for ENTER or ESC
}
您可以在循環中放置error_log()或嘗試捕獲並記錄異常以查看發生了什麼。如果這是您通過在事件發生時暫停代碼來實現的目標。其他方式可以使用IDE等XDebug,您可以在代碼中放置一個斷點並逐行執行。 – mrjamesmyers
@mrjamesmyers不,不是錯誤,只是執行。因此,每次迭代我需要檢查一切是否正常,按ENTER,進入下一個...等等。 – 3zzy
您可以使用XDebug實現該功能,該工具可以配置爲與NetBeans,Notepad ++和許多其他IDE /編輯器(或者PHPStorm或Zend Studio,但必須爲它們付費)配合使用。其他方面可以在JavaScript中執行foreach循環,然後聽取Enter Key按下並增加索引,然後使用Ajax發佈到PHP – mrjamesmyers