Php 将远程(动态生成的)PDF保存到服务器

Php 将远程(动态生成的)PDF保存到服务器,php,pdf,curl,fopen,file-put-contents,Php,Pdf,Curl,Fopen,File Put Contents,我想用PHP将PDF从URL(API)复制到我们的服务器上 当我在浏览器中调用URL时,文件开始直接下载,因此这不是一个静态PDF/URL。我想这就是问题所在 我用PHP尝试了不同的函数,但没有成功: 文件、内容、复制、打印/写入 你能给我个建议吗 例如,我尝试过: $url_label = "http://example.com/Public/downloadlabel.aspx?username=$username&password=$password&layout=labe

我想用PHP将PDF从URL(API)复制到我们的服务器上

当我在浏览器中调用URL时,文件开始直接下载,因此这不是一个静态PDF/URL。我想这就是问题所在

我用PHP尝试了不同的函数,但没有成功: 文件、内容、复制、打印/写入

你能给我个建议吗

例如,我尝试过:

$url_label = "http://example.com/Public/downloadlabel.aspx?username=$username&password=$password&layout=label10x15&zipcode=$zipcode&shipment=$ShipmentID";

file_put_contents("label.pdf", fopen($url_label, 'r'));
PDF文件是在我的文件夹中创建的,但此文件为空(0字节)

通过curl,我希望通过强制下载:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url_label);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, false);
$data = curl_exec($ch);
curl_close($ch);
$destination = dirname(__FILE__) . '/file.pdf';
$file = fopen($destination, "w+");
fputs($file, $data);
fclose($file);
curl_close($ch);
PDF文件创建时有277个字节,但已损坏


有什么想法吗?

显示您当前的代码,这样我们就可以看到您现在正在做什么,并帮助您将其作为一个基本的开始。您阅读了吗?没有任何代码我们只能推测我的道歉。。。查看上面我的代码。显示您当前的代码,这样我们就可以看到您现在正在做什么,并帮助您将其作为一个基本的开始。您阅读了吗?没有任何代码我们只能推测我的道歉。。。请参阅上面的代码。