我在一個大的PHP腳本中有這個變量,我想追溯到何時/何地以及它實例化了什麼值。有沒有一個函數/ API或調試技術來做到這一點?在php中,有沒有辦法跟蹤變量?
回答
如果您使用PHPStorm可以設置斷點和檢查變量的值。
你需要安裝好Xdebug的。
是的,我知道,但有沒有辦法做到這一點,而不是像xdebug一樣的調試器? – dave
我不知道如何在沒有JIT調試器的情況下執行此操作。 –
您可以使用debug_print_backtrace()函數。 http://php.net/manual/en/function.debug-print-backtrace.php
<?php
function f1() {
f2();
}
function f2() {
f3();
}
function f3(){
echo "<pre>";
debug_print_backtrace();
echo "</pre>";
}
f1();
?>
輸出:
#0 f3() called at [/home/xfiddlec/public_html/main/code_47406510.php:9]
#1 f2() called at [/home/xfiddlec/public_html/main/code_47406510.php:5]
#2 f1() called at [/home/xfiddlec/public_html/main/code_47406510.php:18]
如果這被證實是正確的,那麼我已經投了一百萬次 –
這不會追溯一個變量,而只是一個調用debug_print_backtrace()的地方。 – dave
- 1. 有沒有辦法在PHP中跟蹤Garbe收集器活動?
- 2. 有沒有辦法在Java ME中打印棧跟蹤畫面?
- 3. 有沒有辦法在Apache中使用PHP實時堆棧跟蹤?
- 4. 有沒有辦法跟蹤字典中項目的排序?
- 5. 有沒有辦法跟蹤Akka中的每條消息?
- 6. 有沒有辦法跟蹤iframe的designMode中的選擇範圍?
- 7. 有沒有辦法跟蹤HTML元素的所有更改?
- 8. 有沒有辦法跟蹤所有POJO事件的交易?
- 9. 有沒有一種簡單的方法來跟蹤Firefox變量的JavaScript變量?
- 10. 在Ruby中,爲什麼堆棧跟蹤中沒有變量名?
- 11. 有沒有辦法在EF中詢問上下文有多大跟蹤集?
- 12. 有沒有辦法按需打印堆棧跟蹤?
- 13. 有沒有辦法跟蹤已經刪除的實體?
- 14. 有沒有辦法使用Shopify API來跟蹤下訂單?
- 15. 有沒有辦法跟蹤mysql連接請求?
- 16. 有沒有辦法輕鬆跟蹤多個OSGi服務?
- 17. Android WebView:有沒有辦法獲得一個javascript堆棧跟蹤?
- 18. 有沒有辦法跟蹤JavaScript的點擊?
- 19. 有沒有辦法'烘烤'變量?
- 20. 有沒有辦法測試變量「isForEachable」
- 21. 有沒有辦法訪問所有PHP變量的列表?
- 22. 有沒有辦法在Visual Studio中的程序結束後跟蹤某些變量的值?
- 23. 有沒有辦法在stackview中有一個全局變量?
- 24. 有沒有辦法跟蹤推送通知,如果用戶沒有點擊它
- 25. 有沒有辦法讓c#中的所有線程的堆棧跟蹤,如java.lang.Thread.getAllStackTraces()?
- 26. 有沒有辦法於獲取變量添加到PHP包括
- 27. 有沒有辦法通過JavaScript來設定一個PHP變量
- 28. 有沒有辦法在php include中使用另一個文件中的變量?
- 29. 在TFS中有沒有辦法跟蹤我在sql 2008r2中創建的腳本的變化?
- 30. 有沒有使用PHP跟蹤GPS設備的方法?
有一個簡單的'-d' ['xdebug.collect_assignments = 1'](http://xdebug.org/docs/execution_trace)快速瀏覽。 – mario