[ Index ]

PHP Cross Reference of phpBB-3.1.12-deutsch

title

Body

[close]

/vendor/symfony/config/Symfony/Component/Config/Exception/ -> FileLoaderLoadException.php (source)

   1  <?php
   2  
   3  /*
   4   * This file is part of the Symfony package.
   5   *
   6   * (c) Fabien Potencier <fabien@symfony.com>
   7   *
   8   * For the full copyright and license information, please view the LICENSE
   9   * file that was distributed with this source code.
  10   */
  11  
  12  namespace Symfony\Component\Config\Exception;
  13  
  14  /**
  15   * Exception class for when a resource cannot be loaded or imported.
  16   *
  17   * @author Ryan Weaver <ryan@thatsquality.com>
  18   */
  19  class FileLoaderLoadException extends \Exception
  20  {
  21      /**
  22       * @param string     $resource       The resource that could not be imported
  23       * @param string     $sourceResource The original resource importing the new resource
  24       * @param int        $code           The error code
  25       * @param \Exception $previous       A previous exception
  26       */
  27      public function __construct($resource, $sourceResource = null, $code = null, $previous = null)
  28      {
  29          if (null === $sourceResource) {
  30              $message = sprintf('Cannot load resource "%s".', $this->varToString($resource));
  31          } else {
  32              $message = sprintf('Cannot import resource "%s" from "%s".', $this->varToString($resource), $this->varToString($sourceResource));
  33          }
  34  
  35          // Is the resource located inside a bundle?
  36          if ('@' === $resource[0]) {
  37              $parts = explode(DIRECTORY_SEPARATOR, $resource);
  38              $bundle = substr($parts[0], 1);
  39              $message .= sprintf(' Make sure the "%s" bundle is correctly registered and loaded in the application kernel class.', $bundle);
  40              $message .= sprintf(' If the bundle is registered, make sure the bundle path "%s" is not empty.', $resource);
  41          } elseif ($previous) {
  42              // include the previous exception, to help the user see what might be the underlying cause
  43              $message .= ' '.sprintf('(%s)', $previous->getMessage());
  44          }
  45  
  46          parent::__construct($message, $code, $previous);
  47      }
  48  
  49      protected function varToString($var)
  50      {
  51          if (is_object($var)) {
  52              return sprintf('Object(%s)', get_class($var));
  53          }
  54  
  55          if (is_array($var)) {
  56              $a = array();
  57              foreach ($var as $k => $v) {
  58                  $a[] = sprintf('%s => %s', $k, $this->varToString($v));
  59              }
  60  
  61              return sprintf('Array(%s)', implode(', ', $a));
  62          }
  63  
  64          if (is_resource($var)) {
  65              return sprintf('Resource(%s)', get_resource_type($var));
  66          }
  67  
  68          if (null === $var) {
  69              return 'null';
  70          }
  71  
  72          if (false === $var) {
  73              return 'false';
  74          }
  75  
  76          if (true === $var) {
  77              return 'true';
  78          }
  79  
  80          return (string) $var;
  81      }
  82  }


Generated: Thu Jan 11 00:25:41 2018 Cross-referenced by PHPXref 0.7.1