Stream php opencloud openstack下载图像,但无法将其保存在本地文件中
使用php opencloud,我成功地连接到触发我的图像下载。大文件(20、30或50 GB) ,与 我可以看到Psr7正在下载一个临时文件Stream php opencloud openstack下载图像,但无法将其保存在本地文件中,stream,openstack,php-opencloud,Stream,Openstack,Php Opencloud,使用php opencloud,我成功地连接到触发我的图像下载。大文件(20、30或50 GB) ,与 我可以看到Psr7正在下载一个临时文件/tmp/php…中的请求体,但我根本不知道如何重定向数据以将它们存储在一个持久的本地文件中 在使用fopen时,我遇到了内存耗尽和内存不足的问题 $fp = fopen( $local_file, 'w' ); stream_copy_to_stream( $image->downloadData(), $fp ); 触发器没有错误,但$loca
/tmp/php…
中的请求体,但我根本不知道如何重定向数据以将它们存储在一个持久的本地文件中
在使用fopen时,我遇到了内存耗尽和内存不足的问题
$fp = fopen( $local_file, 'w' );
stream_copy_to_stream( $image->downloadData(), $fp );
触发器没有错误,但$local_文件的结尾仍为0字节
我怎样才能做到这一点呢?我在几个小时内就试过了,我知道这太愚蠢了:
while( !$stream->eof() ) {
$buffer = $stream->read( 4096 );
fwrite( $fp, $buffer );
}
fclose( $fp );
它工作得很好
while( !$stream->eof() ) {
$buffer = $stream->read( 4096 );
fwrite( $fp, $buffer );
}
fclose( $fp );