Note that the $postname and $mimetype parameters are in the reverse order to the CURLFile::__construct function.(PHP 8 >= 8.1.0)
CURLStringFile::__construct — Создаёт объект CURLStringFile
$data, string $postname, string $mime = "application/octet-stream")
Создаёт объект CURLStringFile, который используется для загрузки файла
с помощью CURLOPT_POSTFIELDS.
dataСодержимое для загрузки.
postnameИмя файла, который будет использоваться в загружаемых данных.
mime
MIME-тип файла (по умолчанию application/octet-stream).
Пример #1 Пример использования CURLStringFile::__construct()
<?php
/* http://example.com/upload.php:
<?php
var_dump($_FILES);
var_dump(file_get_contents($_FILES['test_string']['tmp_name']));
?>
*/
// Создание дескриптора cURL
$ch = curl_init('http://example.com/upload.php');
// Создание объекта CURLStringFile
$cstringfile = new CURLStringFile('тестовое содержимое для загрузки','test.txt','text/plain');
// Назначение данных для POST-запроса
$data = array('test_string' => $cstringfile);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
// Выполнение дескриптора
curl_exec($ch);
?>Результат выполнения приведённого примера:
array(1) {
["test_string"]=>
array(5) {
["name"]=>
string(8) "test.txt"
["type"]=>
string(10) "text/plain"
["tmp_name"]=>
string(14) "/tmp/phpTtaoCz"
["error"]=>
int(0)
["size"]=>
int(20)
}
}
string(20) "test upload contents"