public function download(): int
    {
        $targetPath = $this->getFilePath();

        if (!is_dir(dirname($targetPath))) {
            mkdir(dirname($targetPath), 0777, true);
        }

        $fileUrl = $this->getFileUrl();

        $fp = @fopen($fileUrl, 'rb');
        $responseHeaders = get_headers($fileUrl);
        if (mb_strpos($responseHeaders[0], '200 OK') === false) {
            throw new \RuntimeException(sprintf('Error downloading file "%s" (%s)', $fileUrl, $responseHeaders[0]));
        }

        $downloadedSize = file_put_contents($targetPath, $fp);
        // @codeCoverageIgnoreStart
        if (!$downloadedSize) {
            throw new \RuntimeException(sprintf('Error saving file to path "%s"', $targetPath));
        }
        // @codeCoverageIgnoreEnd

        return $downloadedSize;
    }
public function download(): int
    {
        $targetPath = $this->getFilePath();

        if (!is_dir(dirname($targetPath))) {
            mkdir(dirname($targetPath), 0777, true);
        }

        $fileUrl = $this->getFileUrl();

        $fp = @fopen($fileUrl, 'rb');
        $responseHeaders = get_headers($fileUrl);
        if (mb_strpos($responseHeaders[0], '200 OK') === false) {
            throw new \RuntimeException(sprintf('Error downloading file "%s" (%s)', $fileUrl, $responseHeaders[0]));
        }

        $downloadedSize = file_put_contents($targetPath, $fp);
        // @codeCoverageIgnoreStart
        if (!$downloadedSize) {
            throw new \RuntimeException(sprintf('Error saving file to path "%s"', $targetPath));
        }
        // @codeCoverageIgnoreEnd

        return $downloadedSize;
    }
public function download ( ) : int { $ targetPath = $ this -> getFilePath ( ) ; if ( ! is_dir ( dirname ( $ targetPath ) ) ) { mkdir ( dirname ( $ targetPath ) , 0777 , true ) ; } $ fileUrl = $ this -> getFileUrl ( ) ; $ fp = @ fopen ( $ fileUrl , 'rb' ) ; $ responseHeaders = get_headers ( $ fileUrl ) ; if ( mb_strpos ( $ responseHeaders [ 0 ] , '200 OK' ) === false ) { throw new \ RuntimeException ( sprintf ( 'Error downloading file "%s" (%s)' , $ fileUrl , $ responseHeaders [ 0 ] ) ) ; } $ downloadedSize = file_put_contents ( $ targetPath , $ fp ) ; // @codeCoverageIgnoreStart if ( ! $ downloadedSize ) { throw new \ RuntimeException ( sprintf ( 'Error saving file to path "%s"' , $ targetPath ) ) ; } // @codeCoverageIgnoreEnd return $ downloadedSize ; }
Execute the download

@throws \RuntimeException Thrown when file cannot be downloaded
@return int Downloaded size in bytes.
Execute the download