X7ROOT File Manager
Current Path:
/opt/alt/php55/usr/share/pear/Symfony/Component/Finder/Iterator
opt
/
alt
/
php55
/
usr
/
share
/
pear
/
Symfony
/
Component
/
Finder
/
Iterator
/
??
..
??
CustomFilterIterator.php
(1.51 KB)
??
DateRangeFilterIterator.php
(1.43 KB)
??
DepthRangeFilterIterator.php
(1.24 KB)
??
ExcludeDirectoryFilterIterator.php
(1.4 KB)
??
FilePathsIterator.php
(2.64 KB)
??
FileTypeFilterIterator.php
(1.35 KB)
??
FilecontentFilterIterator.php
(1.9 KB)
??
FilenameFilterIterator.php
(1.68 KB)
??
FilterIterator.php
(1.41 KB)
??
MultiplePcreFilterIterator.php
(1.73 KB)
??
PathFilterIterator.php
(1.91 KB)
??
RecursiveDirectoryIterator.php
(2.98 KB)
??
SizeRangeFilterIterator.php
(1.41 KB)
??
SortableIterator.php
(2.49 KB)
Editing: RecursiveDirectoryIterator.php
<?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\Iterator; use Symfony\Component\Finder\Exception\AccessDeniedException; use Symfony\Component\Finder\SplFileInfo; /** * Extends the \RecursiveDirectoryIterator to support relative paths * * @author Victor Berchet <victor@suumit.com> */ class RecursiveDirectoryIterator extends \RecursiveDirectoryIterator { /** * @var boolean */ private $ignoreUnreadableDirs; /** * @var Boolean */ private $rewindable; /** * Constructor. * * @param string $path * @param int $flags * @param boolean $ignoreUnreadableDirs * * @throws \RuntimeException */ public function __construct($path, $flags, $ignoreUnreadableDirs = false) { if ($flags & (self::CURRENT_AS_PATHNAME | self::CURRENT_AS_SELF)) { throw new \RuntimeException('This iterator only support returning current as fileinfo.'); } parent::__construct($path, $flags); $this->ignoreUnreadableDirs = $ignoreUnreadableDirs; } /** * Return an instance of SplFileInfo with support for relative paths * * @return SplFileInfo File information */ public function current() { return new SplFileInfo(parent::current()->getPathname(), $this->getSubPath(), $this->getSubPathname()); } /** * @return \RecursiveIterator * * @throws AccessDeniedException */ public function getChildren() { try { return parent::getChildren(); } catch (\UnexpectedValueException $e) { if ($this->ignoreUnreadableDirs) { // If directory is unreadable and finder is set to ignore it, a fake empty content is returned. return new \RecursiveArrayIterator(array()); } else { throw new AccessDeniedException($e->getMessage(), $e->getCode(), $e); } } } /** * Do nothing for non rewindable stream */ public function rewind() { if (false === $this->isRewindable()) { return; } // @see https://bugs.php.net/bug.php?id=49104 parent::next(); parent::rewind(); } /** * Checks if the stream is rewindable. * * @return Boolean true when the stream is rewindable, false otherwise */ public function isRewindable() { if (null !== $this->rewindable) { return $this->rewindable; } if (false !== $stream = @opendir($this->getPath())) { $infos = stream_get_meta_data($stream); closedir($stream); if ($infos['seekable']) { return $this->rewindable = true; } } return $this->rewindable = false; } }
Upload File
Create Folder