code: public function stream_open($path, $mode, $options, &$opened_path)
      {
          $this->fileName = $path;
          $this->temporaryFileName = tempnam(sys_get_temp_dir(), 'azure');
  
          // Check the file can be opened
          $fh = @fopen($this->temporaryFileName, $mode);
          if ($fh === false) {
              return false;
          }
          fclose($fh);
  
          // Write mode?
          if (strpbrk($mode, 'wax+')) {
              $this->writeMode = true;
          } else {
              $this->writeMode = false;
          }
  
          // If read/append, fetch the file
          if (!$this->writeMode || strpbrk($mode, 'ra+')) {
              $this->getStorageClient($this->fileName)->getBlob(
                  $this->getContainerName($this->fileName),
                  $this->getFileName($this->fileName),
                  $this->temporaryFileName
              );
          }
  
          // Open temporary file handle
          $this->temporaryFileHandle = fopen($this->temporaryFileName, $mode);
  
          // Ok!
          return true;
      }
docs: Open the stream
  
  @param  string  $path
  @param  string  $mode
  @param  integer $options
  @param  string  $opened_path
  @return boolean