Использование CURL для имен файлов с расширенными символами Unicode / арабский - PullRequest
0 голосов
/ 17 июня 2019

Использование PHP 7.3.1 на IIS 8.5

Следующий код возвращает HTTP-код 0

<?php
$filename = 'ث.mp3';

$file = curl_file_create($filename,'audio/mpeg',basename($filename));

$options = array(
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_POSTFIELDS => array('file' => $file)
);

$ch = curl_init("https://httpbin.org/post");
curl_setopt_array($ch, $options);

$data = curl_exec($ch);
$info = curl_getinfo($ch);

curl_close($ch);

echo $info['http_code'];

Изменение первой строки на $filename = test.mp3 делает запрос успешным и возвращает HTTP-код 200

Я понимаю, что API libcurl отвечает за это поведение - см. https://bugs.php.net/bug.php?id=77262

Кто-нибудь знает обходной путь, если не считать переименования файла?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...