在PHP中,可以使用CURL庫來實現跨域上傳文件。以下是一個簡單的示例代碼:
<?php
$url = 'https://example.com/upload'; // 目標上傳URL
$file_path = '/path/to/file.jpg'; // 本地文件路徑
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, [
'file' => new CURLFile($file_path)
]);
$response = curl_exec($ch);
if(curl_errno($ch)){
echo 'Curl error: ' . curl_error($ch);
} else {
echo 'File uploaded successfully.';
}
curl_close($ch);
?>
在上面的示例中,我們首先定義了目標上傳的URL和本地文件的路徑。然后使用curl_init()函數初始化一個新的CURL會話,并設置上傳參數。使用CURLOPT_POSTFIELDS選項將文件作為CURLFile對象發送給目標URL。最后通過curl_exec()函數執行CURL會話,并檢查是否有錯誤發生。
需要注意的是,要確保目標URL允許跨域上傳文件,并且服務器端也需要做相應處理來接收文件數據。