debug_print_backtrace не работает - PullRequest
1 голос
/ 09 февраля 2011

У меня PHP 5.3.4, и когда я пытаюсь использовать debug_print_backtrace, я ничего не получаю. Когда я использую vardump, я получаю пустой массив, как вы можете видеть ниже.

index.php:

<?php
define('WP_USE_THEMES', true);

require('./wp-blog-header.php');

var_dump(debug_backtrace());

echo PHP_VERSION;
?>

, который возвращает

...
</html> 
array(0) {
}
5.3.4

Может кто-нибудь сказать мне, что не так? Я ожидаю увидеть все, что было вызвано в бегах. Вместо этого я ничего не вижу.

Ответы [ 2 ]

5 голосов
/ 09 февраля 2011

debug_backtrace () показывает не то, что было вызвано до сих пор, а текущий стек вызовов (т. Е. Более или менее, где php будет переходить к оператору return, пока не достигнет верхнего уровня), когда функция вызывается.
Возможно, вас заинтересует профилировщик, например, реализованный в XDebug , а также инструмент для анализа данных, например, kcachegrind .

2 голосов
/ 09 февраля 2011

Если вы действительно после покрытия кода (как это звучит из вашего описания), то XDebug полезен, или посмотрите ответы на этот вопрос SO

...