Peacock Suit » Zend framework: Logging Database Queries to FireBug
Logging database queries to FireBug is sinfully simple with the new component Zend_Db_Profiler_Firebug in ZF 1.6, now available, you can download it here Zend Framework Download Page.
Requirements:
- Firefox Browser ideally version 3 but version 2 is also supported.
- Firebug Firefox Extension.
- FirePHP Firefox Extension.
More information on requirements at the Zend Framework Documentation - Profiling with Firebug
Let’s look at some examples.
< ?php // Instatiate the database $db = Zend_Db::factory('Pdo_Mysql', array( 'host' => 'localhost', 'dbname' => 'zf_feature_testing', 'username' => 'user123', 'password' => 'pass123' ) ); // Instantiate the profiler in your bootstrap file $profiler = new Zend_Db_Profiler_Firebug('All Database Queries:'); // Enable it $profiler->setEnabled(true); // Attach the profiler to your db adapter $db->setProfiler($profiler); // Run your queries $result1 = $db->fetchAll('SELECT * FROM zf_test'); $result2 = $db->fetchAll('SELECT * FROM zf_test where id = ?', 3);Alternatively you can add the profiler parameters to the Zend_Db factory.
< ?php // Instatiate the database, passing in the profiler parameters. $db = Zend_Db::factory('Pdo_Mysql', array( 'host' => 'localhost', 'dbname' => 'zf_feature_testing', 'username' => 'user123', 'password' => 'pass123', 'profiler' => array( 'enabled' => true, 'class' => 'Zend_Db_Profiler_Firebug' ) ) );Or from an .ini file using Zend_Config_Ini
$config = new Zend_Config_Ini('../application/config.ini', 'development'); $db = Zend_Db::factory($config->database);config.ini
[development] database.adapter = pdo_mysql database.params.host = localhost database.params.username = user123 database.params.password = pass123 database.params.dbname = zf_feature_testing database.params.profiler.enabled = true database.params.profiler.class = Zend_Db_Profiler_FirebugShow me my profiling data?
Open FireBug, you will see a link under console.
Click it open and it will list all the queries that were run.
Enjoy!
just found out that the zend framework has a built in component to allow me to use firePHP, ive always wondered how to go about setting this add on up and using it to debug my work and now here it is, thanks @sitepointdotcom for the initial post talking about using firePHP http://www.sitepoint.com/blogs/2010/02/09/debug-php-firebug-firephp/


