@tincap

Почему не работает отправка файла в cUrl?

Пытаюсь отправить файл через cUrl, но переданные данные воспринимаются не как $_FILES, а как обычный текст.

Есть index.php и post.php

index.php
$post = [
    'image' => "@/Library/WebServer/Documents/test/test.jpg",
    'text'  => 'Hello',
];

$ch = curl_init('http://localhost/post.php');
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, true);
$response = curl_exec($ch);

echo $response;


post.php
echo 'REQUEST' . "\n";
print_r($_REQUEST);

echo 'FILES' . "\n";
print_r($_FILES);


Вывод:

REQUEST
Array
(
[image] => @/Library/WebServer/Documents/test/test.jpg
[text] => Hello
)
FILES Array ( )
  • Вопрос задан
  • 851 просмотр
Решения вопроса 1
Fett
@Fett
Разработчик
PHP какой версии? Был похожий вопрос PHP 5.6 и отправка файла через cURL
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
R0dger
@R0dger
Laravel/Yii/2 AngularJs PHP RESTful API
Попробуйте как указано тут
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы