9. • Real-time HTML editing
• Was not working for me when I tried it,
but I have done it before. It should work.
• Real-time CSS editing
• Also not working when I put this together
• But, normally they work and are
AWESOME!
23. Variable Dumping
(var_dump ++)
Where is it???
In the Server part of the Net request:
24. Zend Framework
• Doesn’t require you to download the
standard library
• Protocol is built into Zend Framework
• Use it with Zend_Log
• Use it with Zend_Db_Profiler_Firebug
26. Zend Framework
• Zend_Log works using the Observer
pattern
• Log writers are added to Zend_Log
• Each writer can log different levels, to
different places, using different methods
• i.e., file, database, Twitter, or FirePHP
27. Zend Framework
• Create your writer
• Add the writer to the Zend_Log object
• Do this in your bootstrap before dispatch
28. Zend Framework
• Zend_Log lets you set your own logging
levels and map those to FirePHP log types
• $logger->addPriority('ULTRA', 8);
• $writer->setPriorityStyle(8, 'TRACE');
• $logger->ultra('Ultra Message - With
trace');
29. Zend_Log
• Logging exceptions happens automatically
• Just pass the Exception object and FirePHP
will show the exception and stack trace
• Zend_Log, like log4j, lets you set up
multiple writers, with global or local filters,
formats, etc
• One log call can result in many logs in many
places if that’s what you want
30. How it all works
• FirePHP sends data using HTTP headers
• It detects FirePHP running. If it’s not there,
it sends nothing
• Sniff the wire in IE. Nothing there.
31. With great power...
• FirePHP logging is very powerful and very
useful.
• If someone is looking at your site with
FirePHP installed, they will see your
messages... unless...
32. A couple of options
• Turn off logging in production
• $writer->setEnabled(false);
• Turn off logging in production, but enable if
users who should be able to see this stuff
are logged in
• Allows developers to “debug” in
production
• “Debugging” in production requires smart
logging
33. Smart Logging
• Logs can help you track down exactly what
happened
• Or they can be confusing and useless
• File logging is a must when you need to
track down problems after they happened
and reproducing the problem is difficult,
expensive, or impossible
34. FirePHP Logging
• FirePHP logs are temporal
• More detail can be useful for FirePHP logs
than would be practical with file logs
• Zend_Log means you don’t need to make
more than one log call
• Use filters/priorities to determine if you
want FirePHP, file logging, or both