Как добавить строку в файл в pCloud
Я хочу добавить строку в файл, хранящийся в pCloud. pcloud api показывает, что эти низкоуровневые файловые операции возможны. Сначала я получил fileDescriptor файла, затем я попытался добавить в этот файл некоторую строку. Я пробовал несколько раз, но безуспешно.
function getFD()
{
$curl = curl_init();
$curlopt_url = "";
$fd = 0;
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.pcloud.com/file_open?path=/game_player.txt&flags=0x0400",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => array(
"Host: api.pcloud.com",
"Authorization: ".TOKEN
),
));
$response = curl_exec($curl);
$response_array = json_decode($response, TRUE);
curl_close($curl);
if($response_array["result"] == 0)
{
$fd = $response_array["fd"];
}
return $fd;
}
function appendFile($fd, $appendContent)
{
$curl = curl_init();
$curlopt_url = "";
echo "curlopt_url: ".$curlopt_url;
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.pcloud.com/file_write?fd=".$fd,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => array(
"Host: api.pcloud.com",
"Authorization: ".TOKEN,
"Content-Type: multipart/form-data",
),
CURLOPT_POSTFIELDS => array("files: ". $appendContent)
));
$response = curl_exec($curl);
$response_array = json_decode($response, TRUE);
curl_close($curl);
var_dump($response_array);
}
$fd = getFD();
appendFile($fd, "helloworld");
Я всегда получаю ошибку "'error': 'Invalid or closed file descriptor.'". Я не знаю, что я сделал не так. Пожалуйста, помогите мне. Благодарю.