从服务器获取图像很简单,但是我想到了不同的东西。这是一个疯狂的问题,但...是否有可能发送文件(图像)到服务器,但不使用表单上传或FTP连接?我想发送一个请求给例如。带有二进制内容的http://www.example.com/file.php。我想我需要设置Content-type header image/jpeg,但是如何在我的请求中添加一些内容?CURL PHP发送图像
17
A
回答
10
看到http://docs.php.net/function.curl-setopt:
CURLOPT_POSTFIELDS完整数据的HTTP “POST” 操作来发布。 要发布文件,请用@预先指定一个文件名并使用完整路径。这可以作为urlencoded字符串(如'para1 = val1&para2 = val2&...')传递,也可以作为字段名称作为键和字段数据作为值的数组传递。如果value是一个数组,则Content-Type头将被设置为multipart/form-data。
16
有多种方式卷曲使用上传的图像文件,如:
$ch = curl_init();
$data = array('name' => 'Foo', 'file' => '@/path/to/image.jpeg');
curl_setopt($ch, CURLOPT_URL, 'http://localhost/upload.php');
curl_setopt($ch, CURLOPT_POST, 1);
//CURLOPT_SAFE_UPLOAD defaulted to true in 5.6.0
//So next line is required as of php >= 5.6.0
curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
,您可以检查的例子:http://au.php.net/manual/en/function.curl-setopt.php
0
VolkerK是完全正确的,但我的经验表明,发送文件“ @“运算符只能用于数组。
$post['file'] = "@FILE_Path"
现在你可以发送邮件使用CURLOPT_POSTFIELDS
+0
不再推荐此方法。请参阅:http://php.net/manual/en/class.curlfile.php – Erik 2014-12-10 03:58:50
相关问题
- 1. 无法通过cURL发送图像
- 2. 如何使用PHP cURL发送正确的Content-Type图像?
- 3. PHP cURL发送和接收图像客户端/服务器
- 4. PHP curl发送公钥
- 5. cURL PHP GET不发送
- 6. 发送图像PHP迅速
- 7. Php CURL发布,数据不发送
- 8. 用cURL抓取图像php
- 9. CURL PHP发送空白表格
- 10. CURL发送不含空格的XML PHP
- 11. 无法在PHP中使用cURL发送
- 12. PHP curl自动发送两个请求
- 13. PHP - 如何使用CURL发送POSTFIELDS?
- 14. php curl发送帖子数据问题
- 15. 数据值不发送到api。 PHP + cURL
- 16. cURL通过PHP代理发送请求
- 17. 获取PHP curl发送的数据
- 18. 通过PHP POST发送JSON(cURL)
- 19. cURL请求未以PHP发送
- 20. 发送curl而不等待回复php
- 21. 用php发送会话var cUrl
- 22. 使用PHP curl发送xml请求
- 23. 用PHP cURL发送PUT请求
- 24. PHP cURL JSON发送空白参数
- 25. PHP:使用cURL发送XML数据PUT
- 26. 如何用PHP curl发送GET请求
- 27. 用PHP cURL向Node.js发送Post请求
- 28. 发送图像
- 29. 发送图像
- 30. 发送图像
这就是我一直在寻找的文件。谢谢! – 2011-11-28 13:11:23
谢谢你这样一个完整而简洁的例子! – 2013-07-08 02:37:38
CURLOPT_SAFE_UPLOAD默认在5.6.0中为true ...所以你需要添加curl_setopt($ ch,CURLOPT_SAFE_UPLOAD,false);在设置CURLOPT_POSTFIELDS之前。 – muglio 2016-02-15 16:48:28