Debug.php

Namespace

Symfony\Component\Debug

File

drupal/core/vendor/symfony/debug/Symfony/Component/Debug/Debug.php
View source
<?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 Symfony\Component\Debug;

use Symfony\Component\ClassLoader\DebugClassLoader;

/**
 * Registers all the debug tools.
 *
 * @author Fabien Potencier <fabien@symfony.com>
 */
class Debug {
  private static $enabled = false;

  /**
   * Enables the debug tools.
   *
   * This method registers an error handler and an exception handler.
   *
   * If the Symfony ClassLoader component is available, a special
   * class loader is also registered.
   *
   * @param integer $errorReportingLevel The level of error reporting you want
   * @param Boolean $displayErrors       Whether to display errors (for development) or just log them (for production)
   */
  public static function enable($errorReportingLevel = null, $displayErrors = true) {
    if (static::$enabled) {
      return;
    }
    static::$enabled = true;
    error_reporting(-1);
    ErrorHandler::register($errorReportingLevel, $displayErrors);
    if ('cli' !== php_sapi_name()) {
      ExceptionHandler::register();

      // CLI - display errors only if they're not already logged to STDERR
    }
    elseif ($displayErrors && (!ini_get('log_errors') || ini_get('error_log'))) {
      ini_set('display_errors', 1);
    }
    if (class_exists('Symfony\\Component\\ClassLoader\\DebugClassLoader')) {
      DebugClassLoader::enable();
    }
  }

}

Classes

Namesort descending Description
Debug Registers all the debug tools.