debug proměnné do stránky či debug baru z presenteru či komponenty?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Dragonaut
Člen | 33
+
0
-

Ahoj, zkouším rozchodit dumpování proměnných a nevím kde mám chybu, v kódu mám dle dokumentace

$arr = array(10, 20.2, TRUE, NULL, 'hello');
Tracy\Debugger::dump($arr);

a na tom místě se mi aplikace zastaví, ale nic se nestane. Protože nepoužívám IDE s krokovánim tak by se mi občas hodilo dumpnout proměnnou buď do stránky, ale lepší by bylo přímo do debug baru, stejným způsobem jako například vidím nette security identitu nebo proběhlé dotazy do db. Je to možné, případně co dělám blbě ?

Editoval Dragonaut (14. 10. 2014 9:41)

Azathoth
Člen | 495
+
+1
-

Na vypisovani do debug baru pouzivej funkci bardump.

Editoval Azathoth (14. 10. 2014 9:58)

Dragonaut
Člen | 33
+
0
-

Jo to bude ono, díky, ale mám pořád problém s tím, že se mi to vůbec nezobrazí ta proměnná. Ani ve stránce ani v debug baru ?! Používám normální skeleton a jsem v development modu, resp. nic jsem nepřenastavoval.

Jěště jsem to zkoušel metodu log a ta funguje.

\Tracy\Debugger::log($prom);

Zatímco

\Tracy\Debugger::dump($prom);

a

\Tracy\Debugger::barDump($prom);

podle mě nedělá nic :/

Editoval Dragonaut (14. 10. 2014 10:45)

mpis
Člen | 65
+
+1
-

@Dragonaut:
Ale barDump funguje.
A když si dáš třeba do bootstrap.php funkci viz níže, tak to vypíše kde a na kterém řádku.
Vynikající pomůcka.
Našel jsem to tady na fóru, ale už si nevzpomenu na autora. Budiž pochválen.

function barDump($var, $title='')
{
    $backtrace = debug_backtrace();
    $source = (isset($backtrace[1]['class'])) ?
        $backtrace[1]['class'] :
        basename($backtrace[0]['file']);
    $line = $backtrace[0]['line'];
    if($title !== '')
        $title .= ' – ';
    return Tracy\Debugger::barDump($var, $title . $source . ' (' . $line .')');
}
Dragonaut
Člen | 33
+
0
-

Dík, bude se hodit. A už jsem zjistil, proč se mi to nevypisuje.. dávám to do signálu, který se spouští ajaxově ^^, takže v takových případech musím použít Log.

Šaman
Člen | 2666
+
0
-

Pokud jedeš ajaxově, tak použij FireLog, nebo jak se to volá. Osobně ale na odladění aplikace ajax vypínám…

Dragonaut
Člen | 33
+
0
-

Ok, díky.