public function download(array $options)
    {
        $requestUrl = null;
        $requestOptions = [
            'headers' => [
                'Authorization' => $this->authToken,
            ],
            'sink' => isset($options['SaveAs']) ? $options['SaveAs'] : null,
        ];

        if (isset($options['FileId'])) {
            $requestOptions['query'] = ['fileId' => $options['FileId']];
            $requestUrl = $this->downloadUrl.'/b2api/v1/b2_download_file_by_id';
        } else {
            if (!isset($options['BucketName']) && isset($options['BucketId'])) {
                $options['BucketName'] = $this->getBucketNameFromId($options['BucketId']);
            }

            $requestUrl = sprintf('%s/file/%s/%s', $this->downloadUrl, $options['BucketName'], $options['FileName']);
        }

        $this->authorizeAccount();

        $response = $this->client->request('GET', $requestUrl, $requestOptions, false);

        return isset($options['SaveAs']) ? true : $response;
    }
public function download(array $options)
    {
        $requestUrl = null;
        $requestOptions = [
            'headers' => [
                'Authorization' => $this->authToken,
            ],
            'sink' => isset($options['SaveAs']) ? $options['SaveAs'] : null,
        ];

        if (isset($options['FileId'])) {
            $requestOptions['query'] = ['fileId' => $options['FileId']];
            $requestUrl = $this->downloadUrl.'/b2api/v1/b2_download_file_by_id';
        } else {
            if (!isset($options['BucketName']) && isset($options['BucketId'])) {
                $options['BucketName'] = $this->getBucketNameFromId($options['BucketId']);
            }

            $requestUrl = sprintf('%s/file/%s/%s', $this->downloadUrl, $options['BucketName'], $options['FileName']);
        }

        $this->authorizeAccount();

        $response = $this->client->request('GET', $requestUrl, $requestOptions, false);

        return isset($options['SaveAs']) ? true : $response;
    }
public function download ( array $ options ) { $ requestUrl = null ; $ requestOptions = [ 'headers' => [ 'Authorization' => $ this -> authToken , ] , 'sink' => isset ( $ options [ 'SaveAs' ] ) ? $ options [ 'SaveAs' ] : null , ] ; if ( isset ( $ options [ 'FileId' ] ) ) { $ requestOptions [ 'query' ] = [ 'fileId' => $ options [ 'FileId' ] ] ; $ requestUrl = $ this -> downloadUrl . '/b2api/v1/b2_download_file_by_id' ; } else { if ( ! isset ( $ options [ 'BucketName' ] ) && isset ( $ options [ 'BucketId' ] ) ) { $ options [ 'BucketName' ] = $ this -> getBucketNameFromId ( $ options [ 'BucketId' ] ) ; } $ requestUrl = sprintf ( '%s/file/%s/%s' , $ this -> downloadUrl , $ options [ 'BucketName' ] , $ options [ 'FileName' ] ) ; } $ this -> authorizeAccount ( ) ; $ response = $ this -> client -> request ( 'GET' , $ requestUrl , $ requestOptions , false ) ; return isset ( $ options [ 'SaveAs' ] ) ? true : $ response ; }
Download a file from a B2 bucket.

@param array $options

@throws \Exception

@return bool|mixed|string
Download a file from a B2 bucket .