function DrupalLocalStreamWrapper::stream_open

Support for fopen(), file_get_contents(), file_put_contents() etc.

Parameters

$uri: A string containing the URI to the file to open.

$mode: The file mode ("r", "wb" etc.).

$options: A bit mask of STREAM_USE_PATH and STREAM_REPORT_ERRORS.

$opened_path: A string containing the path actually opened.

Return value

Returns TRUE if file was opened successfully.

Overrides StreamWrapperInterface::stream_open

See also

http://php.net/manual/streamwrapper.stream-open.php

File

includes/stream_wrappers.inc, line 405

Class

DrupalLocalStreamWrapper
Drupal stream wrapper base class for local files.

Code

public function stream_open($uri, $mode, $options, &$opened_path) {
    $this->uri = $uri;
    $path = $this->getLocalPath();
    if ($path === FALSE) {
        if ($options & STREAM_REPORT_ERRORS) {
            trigger_error('stream_open() filename cannot be empty', E_USER_WARNING);
        }
        return FALSE;
    }
    $this->handle = $options & STREAM_REPORT_ERRORS ? fopen($path, $mode) : @fopen($path, $mode);
    if ((bool) $this->handle && $options & STREAM_USE_PATH) {
        $opened_path = $path;
    }
    return (bool) $this->handle;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.