includekrexx

Categories

Component ID

2325261

Component name

includekrexx

Component type

module

Maintenance status

Development status

Component security advisory coverage

not-covered

Component created

Component changed

Component body

Overview

kreXX is a php debug tool, which displays debug information about objects and variables in it's own draggable debug output. It started out as a fork of Krumo, but after several refactoring sessions, there is very little left of Krumo.

Usage

Like Krumo, kreXX will be called in the PHP source code.

krexx($myObject);

Most of the time you will use this method. kreXX will analyse the $object and give you detailed information about it:

  • Public attributes of the object
  • Protected attributes of the object (can be toggled)
  • Private attributes of the object (can be toggled)
  • Content of the traversable part of the object (can be toggled)
  • Result of all configured debugging callbacks (can be configured)

In case the variable is not an object, it will simply display its content.

kreXX::timerStart();

Starts a benchmark

kreXX::timerMoment($string);

Defines a "moment" during a benchmark test.
The $string should be something meaningful, like "Model invoice db call".

kreXX::timerEnd();

Ends the benchmark test and displays the result.

kreXX::backtrace();

Outputs a standard backtrace. When kreXX finds objects inside the backtrace, it will analyse them.

krexx::registerFatal();

Registers the fatal error handler in the system.

krexx::unregisterFatal();

Unregisters the fatal error handler in the system.


Features

  • All features from Krumo

Additional features are:

  • Dumping of protected variables
  • Dumping of private variables
  • Dumping of traversable data
  • Configurable debug callbacks, witch will be called on objects (if present). The output will then be dumped.
  • Analysis of the methods of objects (comments, where declared, parameters). Comment dumping supports {@inheritdoc}.
  • When a recursion is encountered, a click on it jumps to the original analysis of said object.
  • Output is draggable and has a closing button.
  • All features can be globally configured in a configuration file.
  • All features can be locally configured in the browser. The settings will be stored in a cookie.
  • Configurable local opening function, to prevent other developers to call your own debug commands
  • Uses cookies to decide, who can use kreXX and who can not.
  • Output can be saved to an output folder. Very useful in m2m communication.
  • Several security measures to prevent an output which is too large (or no output at all).
  • Benchmarking
  • (Un)registerable fatal error handler with a full backtrace

Browser support

- Firefox
- Chrome
- IE 9 – 11
- Opera
- Safari

Similar projects

https://www.drupal.org/project/devel
https://www.drupal.org/node/2034919

Maindifferences to Kint v1.0.0 wip 12.11.14

  • Output is dragable and has a closing button.
  • Output can be redirected to a file.
  • Supports {@inheritdoc}
  • Supports configurable debug methods
  • Supports a customizable call alias to prevent other devs from triggering kreXX.
  • Iterator analysis does displays all properties and methods.
  • Graphical interface of the configuration.
  • Profiling functions
  • Redesigned color-coded skin (in our upcoming release).
  • Unregistrable fatal error handler with a full backtrace (in our upcoming release).