Skip to content

Instantly share code, notes, and snippets.

@batkor
Last active September 7, 2020 13:28
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save batkor/d79090cc05a20d909ab913f5b7c82057 to your computer and use it in GitHub Desktop.
Save batkor/d79090cc05a20d909ab913f5b7c82057 to your computer and use it in GitHub Desktop.
VarDamper handler for > Drupal 8
use Drupal\filter\Render\FilteredMarkup;
use Symfony\Component\VarDumper\Cloner\VarCloner;
use Symfony\Component\VarDumper\Dumper\CliDumper;
use Symfony\Component\VarDumper\Dumper\HtmlDumper;
use Symfony\Component\VarDumper\VarDumper;
// Set handler for VarDumper.
VarDumper::setHandler(function ($var) {
$cloner = new VarCloner();
$dumper = 'cli' === PHP_SAPI ? new CliDumper() : new HtmlDumper();
$output = fopen('php://memory', 'r+b');
$dumper->dump($cloner->cloneVar($var), $output);
$output = stream_get_contents($output, -1, 0);
$output = (string) $output;
$output = FilteredMarkup::create($output);
\Drupal::messenger()->addMessage($output);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment