streamWrapper::url_stat

Retrieve information about a file

Description

public arrayfalse streamWrapper::url_stat(string $path, int $flags)

This method is called in response to all stat related functions, such as:

  • copy
  • fileperms
  • fileinode
  • filesize
  • fileowner
  • filegroup
  • fileatime
  • filemtime
  • filectime
  • filetype
  • is_writable
  • is_readable
  • is_executable
  • is_file
  • is_dir
  • is_link
  • file_exists
  • lstat
  • stat
  • SplFileInfo::getPerms
  • SplFileInfo::getInode
  • SplFileInfo::getSize
  • SplFileInfo::getOwner
  • SplFileInfo::getGroup
  • SplFileInfo::getATime
  • SplFileInfo::getMTime
  • SplFileInfo::getCTime
  • SplFileInfo::getType
  • SplFileInfo::isWritable
  • SplFileInfo::isReadable
  • SplFileInfo::isExecutable
  • SplFileInfo::isFile
  • SplFileInfo::isDir
  • SplFileInfo::isLink
  • RecursiveDirectoryIterator::hasChildren

Parameters

path

The file path or URL to stat. Note that in the case of a URL, it must be a :// delimited URL. Other URL forms are not supported.

flags

Holds additional flags set by the streams API. It can hold one or more of the following values OR'd together.

Flag Description
STREAM_URL_STAT_LINK For resources with the ability to link to other resource (such as an HTTP Location: forward, or a filesystem symlink). This flag specified that only information about the link itself should be returned, not the resource pointed to by the link. This flag is set in response to calls to lstat, is_link, or filetype.
STREAM_URL_STAT_QUIET If this flag is set, your wrapper should not raise any errors. If this flag is not set, you are responsible for reporting errors using the trigger_error function during stating of the path.

Return Values

Should return an array with the same elements as stat does. Unknown or unavailable values should be set to a rational value (usually 0). Special attention should be payed to mode as documented under stat. Should return false on failure.

Errors/Exceptions

Emits E_WARNING if call to this method fails (i.e. not implemented).

Notes

Note:

The streamWrapper::$context property is updated if a valid context is passed to the caller function.

See Also

  • stat
  • streamwrapper::stream_stat