first commit
This commit is contained in:
		
							
								
								
									
										94
									
								
								vendor/rockettheme/toolbox/StreamWrapper/src/ReadOnlyStream.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										94
									
								
								vendor/rockettheme/toolbox/StreamWrapper/src/ReadOnlyStream.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,94 @@ | ||||
| <?php | ||||
| namespace RocketTheme\Toolbox\StreamWrapper; | ||||
|  | ||||
| use RocketTheme\Toolbox\ResourceLocator\ResourceLocatorInterface; | ||||
|  | ||||
| /** | ||||
|  * Implements Read Only Streams. | ||||
|  * | ||||
|  * @package RocketTheme\Toolbox\StreamWrapper | ||||
|  * @author RocketTheme | ||||
|  * @license MIT | ||||
|  */ | ||||
| class ReadOnlyStream extends Stream implements StreamInterface | ||||
| { | ||||
|     /** | ||||
|      * @var ResourceLocatorInterface | ||||
|      */ | ||||
|     protected static $locator; | ||||
|  | ||||
|     public function stream_open($uri, $mode, $options, &$opened_url) | ||||
|     { | ||||
|         if (!\in_array($mode, ['r', 'rb', 'rt'], true)) { | ||||
|             if ($options & STREAM_REPORT_ERRORS) { | ||||
|                 trigger_error(sprintf('stream_open() write modes not allowed for %s', $uri), E_USER_WARNING); | ||||
|             } | ||||
|  | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         $path = $this->getPath($uri); | ||||
|  | ||||
|         if (!$path) { | ||||
|             if ($options & STREAM_REPORT_ERRORS) { | ||||
|                 trigger_error(sprintf('stream_open(): path for %s does not exist', $uri), E_USER_WARNING); | ||||
|             } | ||||
|  | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         $this->uri = $uri; | ||||
|         $this->handle = ($options & STREAM_REPORT_ERRORS) ? fopen($path, $mode) : @fopen($path, $mode); | ||||
|  | ||||
|         return (bool) $this->handle; | ||||
|     } | ||||
|  | ||||
|     public function stream_lock($operation) | ||||
|     { | ||||
|         // Disallow exclusive lock or non-blocking lock requests | ||||
|         if (!\in_array($operation, [LOCK_SH, LOCK_UN, LOCK_SH | LOCK_NB], true)) { | ||||
|             trigger_error( | ||||
|                 sprintf('stream_lock() exclusive lock operations not allowed for %s', $this->uri), | ||||
|                 E_USER_WARNING | ||||
|             ); | ||||
|  | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         return flock($this->handle, $operation); | ||||
|     } | ||||
|  | ||||
|     public function stream_metadata($uri, $option, $value) | ||||
|     { | ||||
|         if ($option !== STREAM_META_TOUCH) { | ||||
|             throw new \BadMethodCallException(sprintf('stream_metadata() not allowed for %s', $uri)); | ||||
|         } | ||||
|  | ||||
|         return parent::stream_metadata($uri, $option, $value); | ||||
|     } | ||||
|  | ||||
|     public function stream_write($data) | ||||
|     { | ||||
|         throw new \BadMethodCallException(sprintf('stream_write() not allowed for %s', $this->uri)); | ||||
|     } | ||||
|  | ||||
|     public function unlink($uri) | ||||
|     { | ||||
|         throw new \BadMethodCallException(sprintf('unlink() not allowed for %s', $uri)); | ||||
|     } | ||||
|  | ||||
|     public function rename($from_uri, $to_uri) | ||||
|     { | ||||
|         throw new \BadMethodCallException(sprintf('rename() not allowed for %s', $from_uri)); | ||||
|     } | ||||
|  | ||||
|     public function mkdir($uri, $mode, $options) | ||||
|     { | ||||
|         throw new \BadMethodCallException(sprintf('mkdir() not allowed for %s', $uri)); | ||||
|     } | ||||
|  | ||||
|     public function rmdir($uri, $options) | ||||
|     { | ||||
|         throw new \BadMethodCallException(sprintf('rmdir() not allowed for %s', $uri)); | ||||
|     } | ||||
| } | ||||
							
								
								
									
										293
									
								
								vendor/rockettheme/toolbox/StreamWrapper/src/Stream.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										293
									
								
								vendor/rockettheme/toolbox/StreamWrapper/src/Stream.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,293 @@ | ||||
| <?php | ||||
| namespace RocketTheme\Toolbox\StreamWrapper; | ||||
|  | ||||
| use RocketTheme\Toolbox\ResourceLocator\ResourceLocatorInterface; | ||||
| use RocketTheme\Toolbox\ResourceLocator\UniformResourceLocator; | ||||
|  | ||||
| /** | ||||
|  * Implements Read/Write Streams. | ||||
|  * | ||||
|  * @package RocketTheme\Toolbox\StreamWrapper | ||||
|  * @author RocketTheme | ||||
|  * @license MIT | ||||
|  */ | ||||
| class Stream implements StreamInterface | ||||
| { | ||||
|     /** | ||||
|      * @var string | ||||
|      */ | ||||
|     protected $uri; | ||||
|  | ||||
|     /** | ||||
|      * A generic resource handle. | ||||
|      * | ||||
|      * @var Resource | ||||
|      */ | ||||
|     protected $handle = null; | ||||
|  | ||||
|     /** | ||||
|      * @var ResourceLocatorInterface|UniformResourceLocator | ||||
|      */ | ||||
|     protected static $locator; | ||||
|  | ||||
|     /** | ||||
|      * @param ResourceLocatorInterface $locator | ||||
|      */ | ||||
|     public static function setLocator(ResourceLocatorInterface $locator) | ||||
|     { | ||||
|         static::$locator = $locator; | ||||
|     } | ||||
|  | ||||
|     public function stream_open($uri, $mode, $options, &$opened_url) | ||||
|     { | ||||
|         $path = $this->getPath($uri, $mode); | ||||
|  | ||||
|         if (!$path) { | ||||
|             if ($options & STREAM_REPORT_ERRORS) { | ||||
|                 trigger_error(sprintf('stream_open(): path for %s does not exist', $uri), E_USER_WARNING); | ||||
|             } | ||||
|  | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         $this->uri = $uri; | ||||
|         $this->handle = ($options & STREAM_REPORT_ERRORS) ? fopen($path, $mode) : @fopen($path, $mode); | ||||
|  | ||||
|         if (static::$locator instanceof UniformResourceLocator && !\in_array($mode, ['r', 'rb', 'rt'], true)) { | ||||
|             static::$locator->clearCache($this->uri); | ||||
|         } | ||||
|  | ||||
|         return (bool) $this->handle; | ||||
|     } | ||||
|  | ||||
|     public function stream_close() | ||||
|     { | ||||
|         return fclose($this->handle); | ||||
|     } | ||||
|  | ||||
|     public function stream_lock($operation) | ||||
|     { | ||||
|         if (\in_array($operation, [LOCK_SH, LOCK_EX, LOCK_UN, LOCK_NB], true)) { | ||||
|             return flock($this->handle, $operation); | ||||
|         } | ||||
|  | ||||
|         return false; | ||||
|     } | ||||
|  | ||||
|     public function stream_metadata($uri, $option, $value) | ||||
|     { | ||||
|         $path = $this->findPath($uri); | ||||
|         if ($path) { | ||||
|             switch ($option) { | ||||
|                 case STREAM_META_TOUCH: | ||||
|                     list ($time, $atime) = $value; | ||||
|                     return touch($path, $time, $atime); | ||||
|  | ||||
|                 case STREAM_META_OWNER_NAME: | ||||
|                 case STREAM_META_OWNER: | ||||
|                     return chown($path, $value); | ||||
|  | ||||
|                 case STREAM_META_GROUP_NAME: | ||||
|                 case STREAM_META_GROUP: | ||||
|                     return chgrp($path, $value); | ||||
|  | ||||
|                 case STREAM_META_ACCESS: | ||||
|                     return chmod($path, $value); | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         return false; | ||||
|     } | ||||
|  | ||||
|     public function stream_read($count) | ||||
|     { | ||||
|         return fread($this->handle, $count); | ||||
|     } | ||||
|  | ||||
|     public function stream_write($data) | ||||
|     { | ||||
|         return fwrite($this->handle, $data); | ||||
|     } | ||||
|  | ||||
|     public function stream_eof() | ||||
|     { | ||||
|         return feof($this->handle); | ||||
|     } | ||||
|  | ||||
|     public function stream_seek($offset, $whence) | ||||
|     { | ||||
|         // fseek returns 0 on success and -1 on a failure. | ||||
|         return !fseek($this->handle, $offset, $whence); | ||||
|     } | ||||
|  | ||||
|     public function stream_flush() | ||||
|     { | ||||
|         return fflush($this->handle); | ||||
|     } | ||||
|  | ||||
|     public function stream_tell() | ||||
|     { | ||||
|         return ftell($this->handle); | ||||
|     } | ||||
|  | ||||
|     public function stream_stat() | ||||
|     { | ||||
|         return fstat($this->handle); | ||||
|     } | ||||
|  | ||||
|     public function unlink($uri) | ||||
|     { | ||||
|         $path = $this->getPath($uri); | ||||
|  | ||||
|         if (!$path) { | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         return unlink($path); | ||||
|     } | ||||
|  | ||||
|     public function rename($fromUri, $toUri) | ||||
|     { | ||||
|         $fromPath = $this->getPath($fromUri); | ||||
|         $toPath = $this->getPath($toUri, 'w'); | ||||
|  | ||||
|         if (!$fromPath || !$toPath) { | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         if (static::$locator instanceof UniformResourceLocator) { | ||||
|             static::$locator->clearCache($fromUri); | ||||
|             static::$locator->clearCache($toUri); | ||||
|         } | ||||
|  | ||||
|         return rename($fromPath, $toPath); | ||||
|     } | ||||
|  | ||||
|     public function mkdir($uri, $mode, $options) | ||||
|     { | ||||
|         $recursive = (bool) ($options & STREAM_MKDIR_RECURSIVE); | ||||
|         $path = $this->getPath($uri, $recursive ? 'd' : 'w'); | ||||
|  | ||||
|         if (!$path) { | ||||
|             if ($options & STREAM_REPORT_ERRORS) { | ||||
|                 trigger_error(sprintf('mkdir(): Could not create directory for %s', $uri), E_USER_WARNING); | ||||
|             } | ||||
|  | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         if (static::$locator instanceof UniformResourceLocator) { | ||||
|             static::$locator->clearCache($uri); | ||||
|         } | ||||
|  | ||||
|         return ($options & STREAM_REPORT_ERRORS) ? mkdir($path, $mode, $recursive) : @mkdir($path, $mode, $recursive); | ||||
|     } | ||||
|  | ||||
|     public function rmdir($uri, $options) | ||||
|     { | ||||
|         $path = $this->getPath($uri); | ||||
|  | ||||
|         if (!$path) { | ||||
|             if ($options & STREAM_REPORT_ERRORS) { | ||||
|                 trigger_error(sprintf('rmdir(): Directory not found for %s', $uri), E_USER_WARNING); | ||||
|             } | ||||
|  | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         if (static::$locator instanceof UniformResourceLocator) { | ||||
|             static::$locator->clearCache($uri); | ||||
|         } | ||||
|  | ||||
|         return ($options & STREAM_REPORT_ERRORS) ? rmdir($path) : @rmdir($path); | ||||
|     } | ||||
|  | ||||
|     public function url_stat($uri, $flags) | ||||
|     { | ||||
|         $path = $this->getPath($uri); | ||||
|  | ||||
|         if (!$path) { | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         // Suppress warnings if requested or if the file or directory does not | ||||
|         // exist. This is consistent with PHPs plain filesystem stream wrapper. | ||||
|         return ($flags & STREAM_URL_STAT_QUIET || !file_exists($path)) ? @stat($path) : stat($path); | ||||
|     } | ||||
|  | ||||
|     public function dir_opendir($uri, $options) | ||||
|     { | ||||
|         $path = $this->getPath($uri); | ||||
|  | ||||
|         if (!$path) { | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         $this->uri = $uri; | ||||
|         $this->handle = opendir($path); | ||||
|  | ||||
|         return (bool) $this->handle; | ||||
|     } | ||||
|  | ||||
|     public function dir_readdir() | ||||
|     { | ||||
|         return readdir($this->handle); | ||||
|     } | ||||
|  | ||||
|     public function dir_rewinddir() | ||||
|     { | ||||
|         rewinddir($this->handle); | ||||
|  | ||||
|         return true; | ||||
|     } | ||||
|  | ||||
|     public function dir_closedir() | ||||
|     { | ||||
|         closedir($this->handle); | ||||
|  | ||||
|         return true; | ||||
|     } | ||||
|  | ||||
|     protected function getPath($uri, $mode = null) | ||||
|     { | ||||
|         if ($mode === null) { | ||||
|             $mode = 'r'; | ||||
|         } | ||||
|  | ||||
|         $path = $this->findPath($uri); | ||||
|  | ||||
|         if ($path && file_exists($path)) { | ||||
|             return $path; | ||||
|         } | ||||
|  | ||||
|         if (strpos($mode[0], 'r') === 0) { | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         // We are either opening a file or creating directory. | ||||
|         list($scheme, $target) = explode('://', $uri, 2); | ||||
|  | ||||
|         if ($target === '') { | ||||
|             return false; | ||||
|         } | ||||
|         $target = explode('/', $target); | ||||
|         $filename = []; | ||||
|  | ||||
|         do { | ||||
|             $filename[] = array_pop($target); | ||||
|  | ||||
|             $path = $this->findPath($scheme . '://' . implode('/', $target)); | ||||
|         } while ($target && !$path); | ||||
|  | ||||
|         if (!$path) { | ||||
|             return false; | ||||
|         } | ||||
|  | ||||
|         return $path . '/' .  implode('/', array_reverse($filename)); | ||||
|     } | ||||
|  | ||||
|     protected function findPath($uri) | ||||
|     { | ||||
|         return static::$locator && static::$locator->isStream($uri) ? static::$locator->findResource($uri) : false; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										94
									
								
								vendor/rockettheme/toolbox/StreamWrapper/src/StreamBuilder.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										94
									
								
								vendor/rockettheme/toolbox/StreamWrapper/src/StreamBuilder.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,94 @@ | ||||
| <?php | ||||
| namespace RocketTheme\Toolbox\StreamWrapper; | ||||
|  | ||||
| /** | ||||
|  * Class StreamBuilder | ||||
|  * @package RocketTheme\Toolbox\StreamWrapper | ||||
|  */ | ||||
| class StreamBuilder | ||||
| { | ||||
|     /** | ||||
|      * @var array | ||||
|      */ | ||||
|     protected $items = []; | ||||
|  | ||||
|     /** | ||||
|      * StreamBuilder constructor. | ||||
|      * @param StreamInterface[] $items | ||||
|      * @throws \InvalidArgumentException | ||||
|      */ | ||||
|     public function __construct(array $items = []) | ||||
|     { | ||||
|         foreach ($items as $scheme => $handler) { | ||||
|             $this->add($scheme, $handler); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * @param string $scheme | ||||
|      * @param StreamInterface $handler | ||||
|      * @return $this | ||||
|      * @throws \InvalidArgumentException | ||||
|      */ | ||||
|     public function add($scheme, $handler) | ||||
|     { | ||||
|         if (isset($this->items[$scheme])) { | ||||
|             if ($handler === $this->items[$scheme]) { | ||||
|                 return $this; | ||||
|             } | ||||
|             throw new \InvalidArgumentException("Stream '{$scheme}' has already been initialized."); | ||||
|         } | ||||
|  | ||||
|         if (!is_subclass_of($handler, 'RocketTheme\Toolbox\StreamWrapper\StreamInterface')) { | ||||
|             throw new \InvalidArgumentException("Stream '{$scheme}' has unknown or invalid type."); | ||||
|         } | ||||
|  | ||||
|         if (!@stream_wrapper_register($scheme, $handler)) { | ||||
|             throw new \InvalidArgumentException("Stream '{$scheme}' could not be initialized."); | ||||
|         } | ||||
|  | ||||
|         $this->items[$scheme] = $handler; | ||||
|  | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * @param string $scheme | ||||
|      * @return $this | ||||
|      */ | ||||
|     public function remove($scheme) | ||||
|     { | ||||
|         if (isset($this->items[$scheme])) { | ||||
|             stream_wrapper_unregister($scheme); | ||||
|             unset($this->items[$scheme]); | ||||
|         } | ||||
|  | ||||
|         return $this; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * @return array | ||||
|      */ | ||||
|     public function getStreams() | ||||
|     { | ||||
|         return $this->items; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * @param string $scheme | ||||
|      * @return bool | ||||
|      */ | ||||
|     public function isStream($scheme) | ||||
|     { | ||||
|         return isset($this->items[$scheme]); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * @param string $scheme | ||||
|      * @return StreamInterface|null | ||||
|      */ | ||||
|     public function getStreamType($scheme) | ||||
|     { | ||||
|         return isset($this->items[$scheme]) ? $this->items[$scheme] : null; | ||||
|     } | ||||
| } | ||||
							
								
								
									
										255
									
								
								vendor/rockettheme/toolbox/StreamWrapper/src/StreamInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										255
									
								
								vendor/rockettheme/toolbox/StreamWrapper/src/StreamInterface.php
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,255 @@ | ||||
| <?php | ||||
| namespace RocketTheme\Toolbox\StreamWrapper; | ||||
|  | ||||
| /** | ||||
|  * Defines Generic PHP stream wrapper interface. | ||||
|  * | ||||
|  * @package RocketTheme\Toolbox\StreamWrapper | ||||
|  * @author RocketTheme | ||||
|  * @license MIT | ||||
|  * | ||||
|  * @see http://www.php.net/manual/class.streamwrapper.php | ||||
|  */ | ||||
| interface StreamInterface | ||||
| { | ||||
|     /** | ||||
|      * Support for fopen(), file_get_contents(), file_put_contents() etc. | ||||
|      * | ||||
|      * @param string $uri        A string containing the URI to the file to open. | ||||
|      * @param string $mode       The file mode ("r", "wb" etc.). | ||||
|      * @param int    $options    A bit mask of STREAM_USE_PATH and STREAM_REPORT_ERRORS. | ||||
|      * @param string $opened_url A string containing the path actually opened. | ||||
|      * | ||||
|      * @return bool Returns TRUE if file was opened successfully. | ||||
|      * @see http://php.net/manual/streamwrapper.stream-open.php | ||||
|      */ | ||||
|     public function stream_open($uri, $mode, $options, &$opened_url); | ||||
|  | ||||
|     /** | ||||
|      * Support for fclose(). | ||||
|      * | ||||
|      * @return bool TRUE if stream was successfully closed. | ||||
|      * @see http://php.net/manual/streamwrapper.stream-close.php | ||||
|      */ | ||||
|     public function stream_close(); | ||||
|  | ||||
|     /** | ||||
|      * Support for flock(). | ||||
|      * | ||||
|      * @param $operation | ||||
|      *     One of the following: | ||||
|      *     - LOCK_SH to acquire a shared lock (reader). | ||||
|      *     - LOCK_EX to acquire an exclusive lock (writer). | ||||
|      *     - LOCK_UN to release a lock (shared or exclusive). | ||||
|      *     - LOCK_NB if you don't want flock() to block while locking (not | ||||
|      *     supported on Windows). | ||||
|      * | ||||
|      * @return bool Always returns TRUE at the present time. | ||||
|      * @see http://php.net/manual/streamwrapper.stream-lock.php | ||||
|      */ | ||||
|     public function stream_lock($operation); | ||||
|  | ||||
|     /** | ||||
|      * Support for touch(), chmod(), chown(), chgrp(). | ||||
|      * | ||||
|      * @param $path | ||||
|      *     The file path or URL to set metadata. Note that in the case of a URL, it must be a :// delimited URL. | ||||
|      *     Other URL forms are not supported. | ||||
|      * | ||||
|      * @param $option | ||||
|      *     One of: | ||||
|      *     - STREAM_META_TOUCH      The method was called in response to touch() | ||||
|      *     - STREAM_META_OWNER_NAME The method was called in response to chown() with string parameter | ||||
|      *     - STREAM_META_OWNER      The method was called in response to chown() | ||||
|      *     - STREAM_META_GROUP_NAME The method was called in response to chgrp() | ||||
|      *     - STREAM_META_GROUP      The method was called in response to chgrp() | ||||
|      *     - STREAM_META_ACCESS     The method was called in response to chmod() | ||||
|      * | ||||
|      * @param $value | ||||
|      *     If option is | ||||
|      *     - STREAM_META_TOUCH:         Array consisting of two arguments of the touch() function. | ||||
|      *     - STREAM_META_OWNER_NAME or | ||||
|      *       STREAM_META_GROUP_NAME:    The name of the owner user/group as string. | ||||
|      *     - STREAM_META_OWNER or | ||||
|      *       STREAM_META_GROUP:         The value owner user/group argument as integer. | ||||
|      *     - STREAM_META_ACCESS:        The argument of the chmod() as integer. | ||||
|  | ||||
|  | ||||
|      * | ||||
|      * @return bool | ||||
|      * @see http://php.net/manual/en/streamwrapper.stream-metadata.php | ||||
|      */ | ||||
|     public function stream_metadata($path, $option, $value); | ||||
|  | ||||
|     /** | ||||
|      * Support for fread(), file_get_contents() etc. | ||||
|      * | ||||
|      * @param $count | ||||
|      *   Maximum number of bytes to be read. | ||||
|      * | ||||
|      * @return string|bool The string that was read, or FALSE in case of an error. | ||||
|      * @see http://php.net/manual/streamwrapper.stream-read.php | ||||
|      */ | ||||
|     public function stream_read($count); | ||||
|  | ||||
|     /** | ||||
|      * Support for fwrite(), file_put_contents() etc. | ||||
|      * | ||||
|      * @param $data | ||||
|      *   The string to be written. | ||||
|      * | ||||
|      * @return int The number of bytes written (integer). | ||||
|      * @see http://php.net/manual/streamwrapper.stream-write.php | ||||
|      */ | ||||
|     public function stream_write($data); | ||||
|  | ||||
|     /** | ||||
|      * Support for feof(). | ||||
|      * | ||||
|      * @return bool TRUE if end-of-file has been reached. | ||||
|      * @see http://php.net/manual/streamwrapper.stream-eof.php | ||||
|      */ | ||||
|     public function stream_eof(); | ||||
|  | ||||
|     /** | ||||
|      * Support for fseek(). | ||||
|      * | ||||
|      * @param $offset | ||||
|      *   The byte offset to got to. | ||||
|      * @param $whence | ||||
|      *   SEEK_SET, SEEK_CUR, or SEEK_END. | ||||
|      * | ||||
|      * @return bool TRUE on success. | ||||
|      * @see http://php.net/manual/streamwrapper.stream-seek.php | ||||
|      */ | ||||
|     public function stream_seek($offset, $whence); | ||||
|  | ||||
|     /** | ||||
|      * Support for fflush(). | ||||
|      * | ||||
|      * @return bool TRUE if data was successfully stored (or there was no data to store). | ||||
|      * @see http://php.net/manual/streamwrapper.stream-flush.php | ||||
|      */ | ||||
|     public function stream_flush(); | ||||
|  | ||||
|     /** | ||||
|      * Support for ftell(). | ||||
|      * | ||||
|      * @return int The current offset in bytes from the beginning of file. | ||||
|      * @see http://php.net/manual/streamwrapper.stream-tell.php | ||||
|      */ | ||||
|     public function stream_tell(); | ||||
|  | ||||
|     /** | ||||
|      * Support for fstat(). | ||||
|      * | ||||
|      * @return array An array with file status, or FALSE in case of an error - see fstat() | ||||
|      * @see http://php.net/manual/streamwrapper.stream-stat.php | ||||
|      */ | ||||
|     public function stream_stat(); | ||||
|  | ||||
|     /** | ||||
|      * Support for unlink(). | ||||
|      * | ||||
|      * @param $uri | ||||
|      *   A string containing the URI to the resource to delete. | ||||
|      * | ||||
|      * @return | ||||
|      *   TRUE if resource was successfully deleted. | ||||
|      * @see http://php.net/manual/streamwrapper.unlink.php | ||||
|      */ | ||||
|     public function unlink($uri); | ||||
|  | ||||
|     /** | ||||
|      * Support for rename(). | ||||
|      * | ||||
|      * @param $from_uri , | ||||
|      *                  The URI to the file to rename. | ||||
|      * @param $to_uri | ||||
|      *                  The new URI for file. | ||||
|      * | ||||
|      * @return bool TRUE if file was successfully renamed. | ||||
|      * @see http://php.net/manual/streamwrapper.rename.php | ||||
|      */ | ||||
|     public function rename($from_uri, $to_uri); | ||||
|  | ||||
|     /** | ||||
|      * Support for mkdir(). | ||||
|      * | ||||
|      * @param $uri | ||||
|      *   A string containing the URI to the directory to create. | ||||
|      * @param $mode | ||||
|      *   Permission flags - see mkdir(). | ||||
|      * @param $options | ||||
|      *   A bit mask of STREAM_REPORT_ERRORS and STREAM_MKDIR_RECURSIVE. | ||||
|      * | ||||
|      * @return bool TRUE if directory was successfully created. | ||||
|      * @see http://php.net/manual/streamwrapper.mkdir.php | ||||
|      */ | ||||
|     public function mkdir($uri, $mode, $options); | ||||
|  | ||||
|     /** | ||||
|      * Support for rmdir(). | ||||
|      * | ||||
|      * @param $uri | ||||
|      *   A string containing the URI to the directory to delete. | ||||
|      * @param $options | ||||
|      *   A bit mask of STREAM_REPORT_ERRORS. | ||||
|      * | ||||
|      * @return | ||||
|      *   TRUE if directory was successfully removed. | ||||
|      * | ||||
|      * @see http://php.net/manual/streamwrapper.rmdir.php | ||||
|      */ | ||||
|     public function rmdir($uri, $options); | ||||
|  | ||||
|     /** | ||||
|      * Support for stat(). | ||||
|      * | ||||
|      * @param $uri | ||||
|      *   A string containing the URI to get information about. | ||||
|      * @param $flags | ||||
|      *   A bit mask of STREAM_URL_STAT_LINK and STREAM_URL_STAT_QUIET. | ||||
|      * | ||||
|      * @return array An array with file status, or FALSE in case of an error - see fstat() | ||||
|      * @see http://php.net/manual/streamwrapper.url-stat.php | ||||
|      */ | ||||
|     public function url_stat($uri, $flags); | ||||
|  | ||||
|     /** | ||||
|      * Support for opendir(). | ||||
|      * | ||||
|      * @param $uri | ||||
|      *   A string containing the URI to the directory to open. | ||||
|      * @param $options | ||||
|      *   Unknown (parameter is not documented in PHP Manual). | ||||
|      * | ||||
|      * @return bool TRUE on success. | ||||
|      * @see http://php.net/manual/streamwrapper.dir-opendir.php | ||||
|      */ | ||||
|     public function dir_opendir($uri, $options); | ||||
|  | ||||
|     /** | ||||
|      * Support for readdir(). | ||||
|      * | ||||
|      * @return string The next filename, or FALSE if there are no more files in the directory. | ||||
|      * @see http://php.net/manual/streamwrapper.dir-readdir.php | ||||
|      */ | ||||
|     public function dir_readdir(); | ||||
|  | ||||
|     /** | ||||
|      * Support for rewinddir(). | ||||
|      * | ||||
|      * @return bool TRUE on success. | ||||
|      * @see http://php.net/manual/streamwrapper.dir-rewinddir.php | ||||
|      */ | ||||
|     public function dir_rewinddir(); | ||||
|  | ||||
|     /** | ||||
|      * Support for closedir(). | ||||
|      * | ||||
|      * @return bool TRUE on success. | ||||
|      * @see http://php.net/manual/streamwrapper.dir-closedir.php | ||||
|      */ | ||||
|     public function dir_closedir(); | ||||
| } | ||||
		Reference in New Issue
	
	Block a user