Description
Debug Toolkit makes debugging your code easier and more enjoyable. It provides you with interactive and helpful tools:
- Better PHP error interface from (Whoops)
- Better variable inspection – no need to use
var_dump
,print_r
, or X-debug - An interactive way to back trace the program’s execution order
Better PHP Error Interface from Whoops
The built-in PHP error container is basic and not as helpful as it could be. On top of that, it’s rather ugly. Wouldn’t you agree?
Whoops gives you a cool interface that is helpful, interactive, and quite nice to look at. Some features:
- Provides the error message and links to search Google, DuckDuckGo, and Stack Overflow.
- Shows the actual code where the error occurred.
- Provides an interactive call stack. Click each and the actual code appears in the viewer panel.
- Environment and details including GET Data, POST Data, Files, Cookie, Session, Server/Request Data, Environment Variables, and Registered Handlers.
See the tools in action in this video
Better Variable Inspection
Though X-debug is powerful, it can be difficult to set up and run. For that reason, it’s common to dump or print out the variable to browser. But the built-in display for the PHP var_dump
and print_r
is basic.
This plugin includes both two very popular variable dumper tools:
VarDumper provides a simple container that displays where you place it.
On the other hand, Kint provides a more powerful interface that gives you more information such as printing out the expression that was passed into it, the data type, memory size, and the value.
To make it even easier, the following utility functions are available for you to use in your code:
Available Functions for Inspecting Variable Values
Let’s explore the functions that are available for you through this plugin. We’ll use the variable inspectors to dump global $post
.
Note: You can pass in any variable or function that returns a value.
Dumps the given variable(s):
global $post;
// VarDumper
vdump( $post );
// Kint
dump( $post );
Dumps the given variable(s) and then exits the program’s execution:
global $post;
// VarDumper
vdump_and_die( $post );
// Kint
dump_and_die( $post );
In addition, there are alias (shorthand) functions available for you if you prefer shorter function names:
vd()
is an alias forvdump()
vdd()
andvdd()
are aliases forvdump_and_die()
d()
is an alias fordump()
dd()
andddd()
are aliases fordump_and_die()
Tracing Call Stack
When debugging, there are times when you need to see the order in which functions were called that lead to a certain point in the program. PHP offers a backtrace that traces back the execution order from the point when the function is invoked.
To make backtracing easier, this plugin provides you with a trace()
function and combines it with the variable inspect functions.
For example, if you wanted to trace the call stack to the start of the loop in your theme’s functions.php
file, you could use this code:
add_action( 'loop_start', function() {
trace();
} );
Available Trace Functions
Place these functions at the point where you want to trace the call stack.
trace();
trace_vdump();
– Combinestrace()
andvdump()
trace_dump();
– Combinestrace()
anddump()
trace_vdump_and_die();
– Combinestrace()
andvdump_and_die()
trace_dump_and_die();
– Combinestrace()
anddump_and_die()
In addition, there are alias (shorthand) functions available for you if you prefer shorter function names:
tracevd();
– Combinestrace()
andvd()
traced();
– Combinestrace()
andd()
tracevdd();
– Combinestrace()
andvdd()
tracedd();
– Combinestrace()
anddd()
tracevddd();
– Combinestrace()
andvddd()
traceddd();
– Combinestrace()
andddd()
Admin Bar
“DEBUG ACTIVE” indicator displays in the WordPress admin bar to alert you when the plugin is active.
Screenshots
Installation
From your WordPress dashboard
- Visit ‘Plugins > Add New’
- Search for ‘Debug Toolkit’
- Activate Debug Toolkit from your Plugins page.
FAQ
- How do I use this utility?
-
When you are testing or debugging your code, you can use any of the functions above in place of var_dump( $var ) and print_r( $var ). No need to wrap it in pre’s either.
- What version of PHP do I need?
-
PHP 5.6, 7.0, 7.1, 7.2, and up.
- Can I run this on a live site?
-
I wouldn’t unless you are testing. This tool is for debug only. Once you push the site live, deactivate and delete this plugin.
- What should I do when the site goes live?
-
Deactivate and delete this plugin.
Reviews
Contributors & Developers
“Debug Toolkit” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Debug Toolkit” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
Version 1.0.1
- Removed changing the admin color palette.
- Removed changing the admin bar background color.
Version 1.0.0
- First release