dilneiss / kint
Kint - debugging tool for PHP developers
4.0-alpha1
2020-11-25 20:18 UTC
Requires
- php: >=5.6
Requires (Dev)
- friendsofphp/php-cs-fixer: ^2.0
- phpspec/prophecy-phpunit: ^2
- phpunit/phpunit: ^9.0
- seld/phar-utils: ^1.0
- symfony/finder: ^3.0 || ^4.0 || ^5.0
- vimeo/psalm: dev-master
Suggests
- ext-ctype: Simple data type tests
- ext-iconv: Provides fallback detection for ambiguous legacy string encodings such as the Windows and ISO 8859 code pages
- ext-mbstring: Provides string encoding detection
- kint-php/kint-js: Provides a simplified dump to console.log()
- kint-php/kint-twig: Provides d() and s() functions in twig templates
- symfony/polyfill-ctype: Replacement for ext-ctype if missing
- symfony/polyfill-iconv: Replacement for ext-iconv if missing
- symfony/polyfill-mbstring: Replacement for ext-mbstring if missing
This package is auto-updated.
Last update: 2024-12-07 10:27:55 UTC
README
What am I looking at?
At first glance Kint is just a pretty replacement for var_dump(), print_r() and debug_backtrace().
However, it's much, much more than that. You will eventually wonder how you developed without it.
Installation
One of the main goals of Kint is to be zero setup.
Download the file and simply
<?php require 'kint.phar';
Or, if you use Composer:
composer require kint-php/kint --dev
Usage
<?php Kint::dump($GLOBALS, $_SERVER); // pass any number of parameters d($GLOBALS, $_SERVER); // or simply use d() as a shorthand Kint::trace(); // Debug backtrace d(1); // Debug backtrace shorthand s($GLOBALS); // Basic output mode ~d($GLOBALS); // Text only output mode Kint::$enabled_mode = false; // Disable kint d('Get off my lawn!'); // Debugs no longer have any effect
Tips & Tricks
- Kint is enabled by default, set
Kint::$enabled_mode = false;
to turn it completely off.
The best practice is to enable Kint in a development environment only - so even if you accidentally leave a dump in production, no one will know. - See the buttons on the right of the output? Click them to open a new tab, show the access path for the value, or show a search box.
- To see the output where you called Kint instead of the docked toolbar at the bottom of the page add the line
Kint\Renderer\RichRenderer::$folder = false;
right after you include Kint. - There are a couple of real-time modifiers you can use:
~d($var)
this call will output in plain text format.+d($var)
will disregard depth level limits and output everything.
Careful, this can hang your browser on large objects!!d($var)
will expand the output automatically.-d($var)
will attempt toob_clean
the previous output and flush after printing.- You can combine modifiers too:
~+d($var)
- Double clicking the + sign will open/close it and all its children.
- Triple clicking the + sign in will open/close everything on the page.
- Add heavy classes to the blacklist to improve performance:
Kint\Parser\BlacklistPlugin::$shallow_blacklist[] = 'Psr\Container\ContainerInterface';
- To change display theme, use
Kint\Renderer\RichRenderer::$theme = 'theme.css';
. You can pass the absolute path to a CSS file, or use one of the built in themes:original.css
(default)solarized.css
solarized-dark.css
aante-light.css
- Kint has keyboard shortcuts! When Kint is visible, press D on the keyboard and you will be able to traverse the tree with arrows, HJKL, and TAB keys - and expand/collapse nodes with SPACE or ENTER.
- You can write plugins and wrapper functions to customize dump behavior!
- Read the full documentation for more information
Authors
Jonathan Vollebregt (jnvsor)
Rokas Šleinius (raveren)
License
Licensed under the MIT License