1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
|
<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 24249 -->
<!-- Reviewed: no -->
<sect1 id="zend.debug.dumping">
<title>Variablen ausgeben</title>
<para>
Die statische Methode <methodname>Zend_Debug::dump()</methodname> druckt oder gibt
Informationen über einen Ausdruck zurück. Diese einfache Technik des Debuggens ist üblich,
weil Sie in einer Ad-Hoc Weise einfach zu verwenden ist und keine Initialisierung, spezielle
Tools oder eine Debuggingumgebung benötigt.
</para>
<example id="zend.debug.dumping.example">
<title>Beispiel der dump() Methode</title>
<programlisting language="php"><![CDATA[
Zend_Debug::dump($var, $label = null, $echo = true);
]]></programlisting>
</example>
<para>
Das Argument <varname>$var</varname> definiert den Ausdruck oder die Variable,
über welche die Methode <methodname>Zend_Debug::dump()</methodname> Informationen ausgeben
soll.
</para>
<para>
Das Argument <varname>$label</varname> ist eine Zeichenkette, die der Ausgabe von
<methodname>Zend_Debug::dump()</methodname> vorgestellt wurd. Das kann beispielsweise
hilfreich sein, um Überschriften zu erhalten, wenn Informationen über mehrere
Variablen auf einen Bildschirm ausgegeben werden.
</para>
<para>
Das boolsche Argument <varname>$echo</varname> definiert, ob die Ausgabe von
<methodname>Zend_Debug::dump()</methodname> mit Echo ausgegeben wird oder nicht. Wenn der
Wert <constant>TRUE</constant> ist, wird mit Echo ausgegeben, sonst nicht. Unabhängig vom
Wert des <varname>$echo</varname> Arguments enthält der Rückgabewert dieser Methode die
Ausgabe.
</para>
<para>
Es könnte hilfreich sein, zu verstehen, dass die <methodname>Zend_Debug::dump()</methodname>
Methode die <acronym>PHP</acronym> Funktion
<ulink url="http://php.net/var_dump"><methodname>var_dump()</methodname></ulink>
verwendet. Wenn der Ausgabestream als Webdarstellung erkannt wird, wird die
Ausgabe von <methodname>var_dump()</methodname> mit Hilfe von <ulink
url="http://php.net/htmlspecialchars"><methodname>htmlspecialchars()</methodname></ulink>
ausgeführt und mit (X)HTML <command><pre></command> Tags umschlossen.
</para>
<tip>
<title>Debuggen mit Zend_Log</title>
<para>
Die Verwendung von <methodname>Zend_Debug::dump()</methodname>eignet sich am besten für
Ad-Hoc Debuggen während der Software Entwicklung. Es kann für die Ausgabe einer Variablen
Code hinzugefügt werden und dieser auch wieder sehr schnell entfernt werden.
wieder sehr schnell entfernt werden.
</para>
<para>
Um permanenteren Debugging-Code zu schreiben, sollte die
<link linkend="zend.log.overview">Zend_Log</link> Komponente verwendet
werden. Zum Beispiel kann der <constant>DEBUG</constant> Loglevel mit dem
<link linkend="zend.log.writers.stream">Stream Logger</link> verwendet werden, um die
Zeichenkette auszugeben, die durch <methodname>Zend_Debug::dump()</methodname>
zurückgegeben wird.
</para>
</tip>
</sect1>
|