Same name and namespace in other branches
  1. 8.9.x core/lib/Drupal/Core/StreamWrapper/LocalStream.php \Drupal\Core\StreamWrapper\LocalStream::url_stat()
  2. 9 core/lib/Drupal/Core/StreamWrapper/LocalStream.php \Drupal\Core\StreamWrapper\LocalStream::url_stat()

Retrieve information about a file.

This method is called in response to all stat() related functions.

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

Parameters

string $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.

int $flags: Holds additional flags set by the streams API. It can hold one or more of the following values ORed together:

  • 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 value

array|false Should return the same as stat() does. Unknown or unavailable values should be set to a rational value (usually 0).

Overrides PhpStreamWrapperInterface::url_stat

See also

stat()

PhpStreamWrapperInterface::stream_stat()

http://php.net/manual/en/streamwrapper.url-stat.php

File

core/lib/Drupal/Core/StreamWrapper/LocalStream.php, line 371

Class

LocalStream
Defines a Drupal stream wrapper base class for local files.

Namespace

Drupal\Core\StreamWrapper

Code

public function url_stat($uri, $flags) {
  $this->uri = $uri;
  $path = $this
    ->getLocalPath();

  // Suppress warnings if requested or if the file or directory does not
  // exist. This is consistent with PHP's plain filesystem stream wrapper.
  if ($flags & STREAM_URL_STAT_QUIET || !file_exists($path)) {
    return @stat($path);
  }
  else {
    return stat($path);
  }
}