Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Ignatz Weyland Geändert vor über 11 Jahren
1
© All rights reserved. Zend Technologies, Inc. Jenseits von var_dump(): Debugging in ZF Jan Burkl System Engineer
2
© All rights reserved. Zend Technologies, Inc. Wer bin ich? Jan Burkl jan.burkl@zend.com PHP Entwickler seit 2001 Projektarbeit Bei Zend seit 2006 System Engineer Zend Certified Engineer PHP 5 Zend Framework
3
© All rights reserved. Zend Technologies, Inc. var_dump() is Evil But I still need to know more!!
4
© All rights reserved. Zend Technologies, Inc. Do you do the var_dump()? Warum var_dump()? Eine Art des Debuggens so alt wie PHP selbst Schnell, einfach & man sieht was man braucht Es ist dabei in jeder Developers Toolbox Benötigt keine Nachforschung, Installation oder Zeit
5
© All rights reserved. Zend Technologies, Inc. Why var_dump() is evil! var_dump() verändert die Applikation und/oder den Library Code, um eine bestimmte Situation zu debuggen Nicht web friendly ( tags und die() Statements) Zend_Debug ist ein glorifiziertes var_dump() Zend_Debug::dump($var); // mehr Schreibarbeit, aber: –Zend_Debug überprüft sapi und der Output wird mit htmlspecialchars gefiltert – Tags um Output –Label –Rückgabewert Zend Debug ist keine Entschuldigung nicht in eine richtige Debugging Umgebung zu investieren 5 Insert->Header & Footer
6
© All rights reserved. Zend Technologies, Inc. Why is var_dump() evil? (cont.) Nicht entwicklerfreundlich: Es muss sich gemerkt werden, wo var_dump() eingesetzt wurde Evtl. sind mehrere var_dump() und die() Aufrufe notwendig, um ein Problem zu identifizieren Evtl. muss die Umgebung für jede Debug Iteration zurückgesetzt werden 6 Insert->Header & Footer
7
© All rights reserved. Zend Technologies, Inc. Why is var_dump() evil? (cont.) Interferenzen mit normalem Output debugging data should not interfere with the content on your page Kein echter Breakpoint Keine Runtime Introspektion der Umgebung Kein Kontext der schlechten Situation 7 Insert->Header & Footer
8
© All rights reserved. Zend Technologies, Inc. Debugging Mit Zend Studio ZendDebugger (PHP extension) von zend.com Integriert in Zend Server (full oder CE), Binary Weitere Option ist Xdebug (Derick Rethans) Zend Studio (paid) & PDT (free) haben beide Debugging- Fähigkeiten Zend Studio Toolbar nutzen Alles gibts hier: http://www.zend.com/en/products/studio/downloads 8 Insert->Header & Footer
9
© All rights reserved. Zend Technologies, Inc. Demo: Debugging mit Zend Studio 9 Insert->Header & Footer
10
© All rights reserved. Zend Technologies, Inc. ZF und Firebug (FirePHP) FirePHP ist eine Bridge von PHP zu Firebug Benötigt Firebug Nutzt die Zend_Wildfire Komponente in ZF Implementierungs Hooks in ZF: Zend_Log_Writer_Firebug Zend_Db_Profiler_Firebug
11
© All rights reserved. Zend Technologies, Inc. Demo: ZF mit Firebug Wildfire Support via Zend_Log_Writer_Firebug & Zend_Db_Profiler_FirePHP 11 Insert->Header & Footer
12
© All rights reserved. Zend Technologies, Inc. ZFDebug Toolbar (Scienta ZF Debug Bar) 3 rd Party Tool Entwickelt von Andreas Pankratz und Joakim Nygård http://zfdebug.googlecode.com In-page Toolbar Kontra: Wird Teil des Output Streams Pro: Nur ein Div-Layer am Ende der Seite Kann in jeder Umgebung eingesetzt werden, keine speziellen Tools notwendig
13
© All rights reserved. Zend Technologies, Inc. Demo: ZFDebug Toolbar
14
© All rights reserved. Zend Technologies, Inc. ZFs Zend Monitor Logger Zend Montior Logger in ZF eingebaut Nur ein application.ini Schlüssel notwendig Zend Monitor ist Bestandteil von Zend Server (nur Full Version, nicht CE Version) 30 Tage Trial
15
© All rights reserved. Zend Technologies, Inc. ZF Zend Monitor Logger
16
© All rights reserved. Zend Technologies, Inc. Zend Studio & ZF Wie nutzt man beides zusammen? Gute Breakpoints in ZF: Gute Stellen für Breakpoints in ZF: Bootstrap Methoden Plugin Broker Dispatcher Action Controller init-Methode & erste Zeile einer Action Expression View nutzen, um Umgebung zu verstehen
17
© All rights reserved. Zend Technologies, Inc. Demo: Zend Studio Tipps/Tricks
18
© All rights reserved. Zend Technologies, Inc. Danke schön! jan@zend.com http://framework.zend.com/
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.