Вход Регистрация
Файл: vendor/symfony/error-handler/ErrorRenderer/CliErrorRenderer.php
Строк: 61
<?php

/*
 * This file is part of the Symfony package.
 *
 * (c) Fabien Potencier <fabien@symfony.com>
 *
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.
 */

namespace SymfonyComponentErrorHandlerErrorRenderer;

use 
SymfonyComponentErrorHandlerExceptionFlattenException;
use 
SymfonyComponentVarDumperClonerVarCloner;
use 
SymfonyComponentVarDumperDumperCliDumper;

// Help opcache.preload discover always-needed symbols
class_exists(CliDumper::class);

/**
 * @author Nicolas Grekas <p@tchwork.com>
 */
class CliErrorRenderer implements ErrorRendererInterface
{
    public function 
render(Throwable $exception): FlattenException
    
{
        
$cloner = new VarCloner();
        
$dumper = new class() extends CliDumper {
            protected function 
supportsColors(): bool
            
{
                
$outputStream $this->outputStream;
                
$this->outputStream fopen('php://stdout''w');

                try {
                    return 
parent::supportsColors();
                } finally {
                    
$this->outputStream $outputStream;
                }
            }
        };

        return 
FlattenException::createFromThrowable($exception)
            ->
setAsString($dumper->dump($cloner->cloneVar($exception), true));
    }
}
Онлайн: 0
Реклама