问题描述
我想使用 PHP 从第三方网站下载 .csv 文件。但是,content-length
标头始终由第三方设置为 0
。因此,下载的文件总是 0 字节长,因此总是空的。实际上,文件大小约为 14 KB。
我可以通过使用 Google Chrome 浏览器下载文件来正确下载文件。显然,浏览器会忽略标头 content-length
。
PHP 中是否有解决方案可以忽略标头 content-length
并下载完整文件,而不管该标头的值如何?
这是我正在谈论的文件:https://lcps.nu/wp-content/uploads/covid-19.csv
目前我正在使用此功能进行下载:
public static function downloadRemoteFile( $remoteFile,$destinationFile ) {
$handleSource = fopen( $remoteFile,'r' );
$handleDestination = fopen( $destinationFile,'w' );
$result = stream_copy_to_stream( $handleSource,$handleDestination );
fclose( $handleSource );
fclose( $handleDestination );
return $result;
}
作为替代方案,我测试了 file_get_contents()
但这并不能解决问题。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)