卷曲 PHP 发送图像

2022-08-30 20:56:58

从服务器获取图像是微不足道的,但我想到了不同的东西。这是一个疯狂的问题,但是...是否可以将文件(图像)发送到服务器,但不使用表单上传或ftp连接?我想发送请求。http://www.example.com/file.php 二进制内容。我认为我需要设置内容类型标题图像/ jpeg,但如何在我的请求中添加一些内容?


答案 1

有多种方法可以使用curl上传图像文件,例如:

$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


答案 2

请参阅 http://docs.php.net/function.curl-setopt

CURLOPT_POSTFIELDS要在 HTTP“POST”操作中发布的完整数据。要发布文件,请在文件名前面加上 @ 并使用完整路径。这可以作为 urlencoded 字符串传递,如 'para1=val1&para2=val2&...'或作为数组,其中字段名称作为键,字段数据作为值。如果 value 是数组,则 Content-Type 标头将设置为多部分/表单数据。

推荐