PHP Curl публикует файл без заголовка

Я не являюсь человеком PHP, но пытаюсь перенести вызов cli CURL на PHP … изначально у меня было:

curl -i -H "Content-Type: text/csv" -X POST --data-binary @$filepath $destination 

Я попытался превратить это в:

 <?php $data['Filedata'] = "@".$filepath; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $destination.'/_'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_HEADER, 1); curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: text/csv")); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $output = curl_exec($ch); curl_close($ch); ?> 

Проблема состоит в том, что это приводит к добавлению дополнительного заголовка к месту назначения, содержащего ------------------------------6614b0cf8aae Content-Disposition: form-data; name=Filedata; filename=$filepath Content-Type: application/octet-stream. ------------------------------6614b0cf8aae Content-Disposition: form-data; name=Filedata; filename=$filepath Content-Type: application/octet-stream.

Я предположил, что это связано с тем, как я использовал $data['Filedata'] , поэтому я попытался заменить строку CURLOPT_POSTFIELDS ниже, но это просто завершает отправку строки пути, а не самого файла.

 curl_setopt($ch, CURLOPT_POSTFIELDS, "@".$filepath); 

Любой разум указывает, что мне не хватает? Как я уже сказал, не PHP-человек!

Solutions Collecting From Web of "PHP Curl публикует файл без заголовка"