sessionless-1.x-dev/tests/src/Traits/DumperTool.php
tests/src/Traits/DumperTool.php
<?php
declare(strict_types=1);
namespace Drupal\Tests\sessionless\Traits;
use Symfony\Component\VarDumper\Cloner\VarCloner;
use Symfony\Component\VarDumper\Dumper\CliDumper;
use Symfony\Component\VarDumper\Dumper\HtmlDumper;
use Symfony\Component\VarDumper\VarDumper;
final class DumperTool {
public static function dumpToHtmlFile(string $fileName = 'dump.html', int $maxDepth = 1) {
VarDumper::setHandler(function ($v) use ($fileName, $maxDepth) {
$cloner = new VarCloner();
$dumper = new HtmlDumper();
$dumper->setDisplayOptions(['maxDepth' => $maxDepth]);
$output = fopen($fileName, 'a');
$dumper->dump($cloner->cloneVar($v), $output);
});
}
public static function dumpToTxtFile(string $fileName = 'dump.txt', int $maxDepth = 1) {
VarDumper::setHandler(function ($v) use ($fileName, $maxDepth) {
$cloner = new VarCloner();
$dumper = new CliDumper();
$dumper->setDisplayOptions(['maxDepth' => $maxDepth]);
$output = fopen($fileName, 'a');
$dumper->dump($cloner->cloneVar($v), $output);
});
}
}
