Вот ещё нашел, нужно будет потом обмозговать...
Цитата: Часто при отладке скриптов требуется вывести значение какой-либо переменной, чтобы понять, на каком этапе берутся неправильные данные. Использование для этого print_r — не самое лучшее решение (особенно при отладке на живом сайте), так как значение может вывестись в неподходящем месте (например, если используется шаблонизатор, то еще до HTML-заголовка). Кроме того, Более корректное решение — запомнить значение в отладочную переменную, которую вывести потом там, где ее появление не будет мешать (например, в подвале сайта).
Я для этих целей написал себе функцию. Эта функция экранирует все переданные в нее параметры и запоминает в глобальную переменную $GLOBALS['IntBF_debug'], из которой ее можно вывести в любом подходящем месте с помощью обычного echo.
code:function _dbg() {
$dbg_on = defined('CONFIG_debug') ? CONFIG_debug : false;
if ($dbg_on) {
if (!isset($GLOBALS['IntBF_debug'])) $GLOBALS['IntBF_debug']='';
$GLOBALS['IntBF_debug'].='<p>';
foreach (func_get_args() as $name=>$value) {
if (is_array($value) || is_object($value)) $GLOBALS['IntBF_debug'].=$name.': '.nl2br(str_replace(' ',' ',htmlspecialchars(print_r($value,true))));
else $GLOBALS['IntBF_debug'].=$name.': '.htmlspecialchars($value).' ';
}
$GLOBALS['IntBF_debug'].="</p>\n";
}
} |