Kint is a simple tool that presents the contents of a variable in a readable way. It's an alternative to var_dump() or scripts like Krumo.
You can find more information on the site of the original class.

Tested on 1.1.8. Should work on earlier versions.
'kint' => array( 'class' => 'ext.Kint.Kint', ),
Add it to your preload property (this is only for declaring the shortcut functions):
'preload' => array('log', 'kint'),
Note: You can still use the plugin without autoloading, but instead of using the shortcut functions, you have to use:
Kint::dump($variable);
To dump a variable:
d($variable);
There is often a need to halt execution after dumping a particular variable:
dd($variable); // execution will stop after this statement; same as d($variable);die;
To print out variable information in simple text (no CSS style or javascript) use
s($variable); // stands for "simple" // or, as before sd($variable); // this will halt execution after displaying data
There are also (currently two) modifiers:
+d($variable); // will dump variable information without limiting the depth /// and -d($variable); // will run ob_clean() beforehand, so this dump is at the top // of the page. Best used with dd().
The latter are possible because the class analyzes the PHP code itself where it was called from.
Last, but not least, you can output a pretty and readable backtrace:
Kint::trace();
Total 2 comments
Hi pligor, normally you call an extension like Kint::dump(); and the file is automatically imported but when you want to use a shortcut function it has to be declared in advance, that's why I used the preload property. It does nothing more than declare a couple of functions, so it shouldn't have any noticeable impact on performance. (and you can also disable it on production)
If you don't mind typing Kint::dump($var); everytime you need to debug a var, you could simply leave out the preload property.
Placing it in external folder is a good way, but of course the code I provided is only to get people started :)
Do you think preload is necessary? I just included the line
inside the 'import' array for autoloading and it works fine (:
Well in fact for all my downloaded extensions, or generally code not developed by me, I use another directory outside of the current project and for this folder I have set the alias 'external' So in my case you will see:
If you think that preload improves perfomance please let me know (:
Leave a comment
Please login to leave your comment.