You are here

SplFileInfo.php in Database Sanitize 7

File

vendor/symfony/finder/SplFileInfo.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\Finder;


/**
 * Extends \SplFileInfo to support relative paths.
 *
 * @author Fabien Potencier <fabien@symfony.com>
 */
class SplFileInfo extends \SplFileInfo {
  private $relativePath;
  private $relativePathname;

  /**
   * @param string $file             The file name
   * @param string $relativePath     The relative path
   * @param string $relativePathname The relative path name
   */
  public function __construct($file, $relativePath, $relativePathname) {
    parent::__construct($file);
    $this->relativePath = $relativePath;
    $this->relativePathname = $relativePathname;
  }

  /**
   * Returns the relative path.
   *
   * This path does not contain the file name.
   *
   * @return string the relative path
   */
  public function getRelativePath() {
    return $this->relativePath;
  }

  /**
   * Returns the relative path name.
   *
   * This path contains the file name.
   *
   * @return string the relative path name
   */
  public function getRelativePathname() {
    return $this->relativePathname;
  }

  /**
   * Returns the contents of the file.
   *
   * @return string the contents of the file
   *
   * @throws \RuntimeException
   */
  public function getContents() {
    set_error_handler(function ($type, $msg) use (&$error) {
      $error = $msg;
    });
    $content = file_get_contents($this
      ->getPathname());
    restore_error_handler();
    if (false === $content) {
      throw new \RuntimeException($error);
    }
    return $content;
  }

}

Classes

Namesort descending Description
SplFileInfo Extends \SplFileInfo to support relative paths.