Я использую этот код для загрузки файла на мой сервер, используя HTTP POST:
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_VERBOSE, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
$post = array(
"upload" => '@' . $filepath
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
$curl_result = curl_exec($ch);
Этот код работает, когда $ filepath не содержит пробелов.Тем не менее, возможно, что это возможно.Когда я тестирую путь с пробелами, я получаю сообщение об ошибке curl "не удалось создать пустые данные".
Руководство по curl не говорит мне, что делать, все, что мне дает, это имена файлов unix без пробелов.Я попытался выполнить http://curl.haxx.se/mail/archive-2006-01/0079.html примерно так, но мне это тоже не помогло:
"upload" => '"@' . $filepath . '"'
"upload" => '@"' . $filepath . '"'
У кого-нибудь есть идея?