server = $server; parent::__construct(); } /** * Handle the command. * * @return void */ public function handle() { switch ($format = $this->option('format')) { case 'cli': $descriptor = new CliDescriptor(new CliDumper); break; case 'html': $descriptor = new HtmlDescriptor(new HtmlDumper); break; default: throw new InvalidArgumentException(sprintf('Unsupported format "%s".', $format)); } $io = new SymfonyStyle($this->input, $this->output); $errorIo = $io->getErrorStyle(); $errorIo->title('Laravel Var Dump Server'); $this->server->start(); $errorIo->success(sprintf('Server listening on %s', $this->server->getHost())); $errorIo->comment('Quit the server with CONTROL-C.'); $this->server->listen(function (Data $data, array $context, int $clientId) use ($descriptor, $io) { $descriptor->describe($io, $data, $context, $clientId); }); } }