好的,我想知道是否可以使用 curl 并从我的站点目录上传图像,而不是从我的机器上,我需要做的是使用表单中的文件选择从我的图像目录上传图像,如果有人知道我需要在我的代码中编辑什么我将不胜感激,我浏览了整个网络,但在我的搜索中一无所获,我在想我需要文件获取内容 base64 编码然后发布我的想法是否正确?
$upload_url = 'http://example.com/settings/upload-img';
$file_path = 'directory/image.png';
$fields = array(
"MAX_FILE_SIZE" => "",
"fileselect[]" => $file_path
);
foreach ($fields as $key => $val) {
$post_data .= $key . '=' . $val . '&';
}
$chr = curl_init();
curl_setopt($chr, CURLOPT_URL, $upload_url);
curl_setopt($chr,CURLOPT_POST, count($fields));
curl_setopt($chr,CURLOPT_POSTFIELDS, rtrim($post_data, '&'));
curl_setopt($chr, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($chr);
curl_close($chr);
我对 base64_encode() 的图像的想法如下,我不确定我是否正确地认为这可能有效。
$raw_img = base64_encode(file_get_contents('directory/image.png'));
然后使用 "fileselect[]" => $raw_img