Prześlij duży plik na dysk Google z Biblioteką Klienta PHP

Próbuję użyć interfejsu API Dysku Google za pośrednictwem Biblioteki klienta PHP, aby przesłać duży plik. Obecnie nie działa, ponieważ jedyną dostępną metodą jest „prosta” metoda przesyłania. Niestety wymaga to załadowania całego pliku jako danych i uderza w mój limit pamięci php. Chciałbym wiedzieć, czy jest to możliwe i zobaczyć przykład, jak to się robi. Wiem, że istnieje metoda na wznawianie i przesyłanie chuncked, ale nie ma dokumentacji, jak z niego korzystać.

<?php
require_once 'google-api-php-client/src/Google_Client.php';
require_once 'google-api-php-client/src/contrib/Google_DriveService.php';

$client = new Google_Client();
// Get your credentials from the APIs Console
$client->setClientId('YOUR_CLIENT_ID');
$client->setClientSecret('YOUR_CLIENT_SECRET');
$client->setRedirectUri('urn:ietf:wg:oauth:2.0:oob');
$client->setScopes(array('https://www.googleapis.com/auth/drive'));

$service = new Google_DriveService($client);

$authUrl = $client->createAuthUrl();

//Request authorization
print "Please visit:\n$authUrl\n\n";
print "Please enter the auth code:\n";
$authCode = trim(fgets(STDIN));

// Exchange authorization code for access token
$accessToken = $client->authenticate($authCode);
$client->setAccessToken($accessToken);

//Insert a file
$file = new Google_DriveFile();
$file->setTitle('My document');
$file->setDescription('A test document');
$file->setMimeType('text/plain');

$data = file_get_contents('document.txt');

$createdFile = $service->files->insert($file, array(
      'data' => $data,
      'mimeType' => 'text/plain',
    ));

print_r($createdFile);
?>

questionAnswers(1)

yourAnswerToTheQuestion