function SessionStreamWrapper::dirname

Same name and namespace in other branches
  1. 8.x-1.x stream_wrapper_example/src/StreamWrapper/SessionStreamWrapper.php \Drupal\stream_wrapper_example\StreamWrapper\SessionStreamWrapper::dirname()
  2. 4.0.x modules/stream_wrapper_example/src/StreamWrapper/SessionStreamWrapper.php \Drupal\stream_wrapper_example\StreamWrapper\SessionStreamWrapper::dirname()

Gets the name of the directory from a given path.

Parameters

string $uri: A URI.

Return value

string A string containing the directory name.

Overrides StreamWrapperInterface::dirname

See also

drupal_dirname()

File

modules/stream_wrapper_example/src/StreamWrapper/SessionStreamWrapper.php, line 660

Class

SessionStreamWrapper
Example stream wrapper class to handle session:// streams.

Namespace

Drupal\stream_wrapper_example\StreamWrapper

Code

public function dirname($uri = NULL) {
  [
    $scheme,
  ] = explode('://', $uri, 2);
  $target = $this->getLocalPath($uri);
  if (strpos($target, '/')) {
    $dirname = preg_replace('@/[^/]*$@', '', $target);
  }
  else {
    $dirname = '';
  }
  return $scheme . '://' . $dirname;
}