Существует локальный файл:
$file = "some russian text here.txt";
Отправлено стандартным Curl как документ:
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: multipart/form-data']);
curl_setopt($ch, CURLOPT_URL, 'https://api.telegram.org/botToken/sendDocument');
$postFields = array(
'chat_id' => '11111',
'document' => new curlfile(realpath($file)),
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
$output = curl_exec($ch);
// convert response
$output = json_decode($output);
// handle error; error output
if(curl_getinfo($ch, CURLINFO_HTTP_CODE) !== 200) {
var_dump($output);
}
curl_close($ch);
В ответ:
NULL
Если имя файла на латинице все отправляет без проблем. Проблема, насколько я понимаю, в русских символах. Неужели невозможно отправить файл с таким именем (с русскими символами)?