php - PHP从没有直接图像名称的url下载图像
问题描述
{{my_salesforce_url}}/sfc/servlet.shepherd/document/download/0694U000007w5QyQAI?operationContext=S1
这个 url 包含一个名为 ine_file.jpg 的文件,当在浏览器中运行并直接下载文件时,但是当我尝试使用 php 下载并将文件保存在本地时没有工作
我尝试:
file_put_contents(public_path() . "/" . $fileName, fopen($file["url"], 'r'));
和
file_put_contents(public_path() . "/" . $fileName, file_get_contents($url));
任何的想法 ?如何从 url 获取文件并使用 php o curl 保存文件?
解决方案
没有魔法,您应该使用copy()
函数下载外部图像,然后在响应中将其发送给用户:
$filename = 'temp-image.jpg';
$tempImage = tempnam(sys_get_temp_dir(), $filename);
copy('https://my-cdn.com/files/image.jpg', $tempImage);
return response()->download($tempImage, $filename);
推荐阅读
- python - 人脸识别中的增量学习
- json - 这个 JSON 响应顶部的 `)]}'` 有什么作用?
- reactjs - 如何修复 Jest 错误:ReferenceError: regeneratorRuntime 未定义
- mysql - 选择多个值
- c# - 发送带有内嵌图像的电子邮件时出现问题
- es6-promise - Modernizr 异步测试
- python - 如何通过 Beautiful Soup 过滤雅虎财经数据
- loops - 在 Tableau 中标记所有行相关的行
- javascript - 为什么 var prezzo 不刷新值?
- function - Powershell 函数字符串输出作为基于文件的函数的输入