Googlesheets API - обновляйте ячейки с помощью php - PullRequest
0 голосов
/ 06 ноября 2018

Я читаю Google Sheet с использованием API и сохраняю значения в моей базе данных, как и планировалось. Я хочу записать идентификатор базы данных записи обратно на лист, поэтому в следующий раз, когда лист будет прочитан, я знаю, что нужно обновлять, а не вставлять. Я знаю, какой будет запись A1, мне просто нужно знать, как записать значение обратно в ячейку.

Мой код чтения выглядит следующим образом

putenv('GOOGLE_APPLICATION_CREDENTIALS=google_secret.json');

$client = new Google_Client;
$client->useApplicationDefaultCredentials();

$client->setApplicationName("Application Name");
$client->setScopes(['https://www.googleapis.com/auth/drive','https://spreadsheets.google.com/feeds']);

if ($client->isAccessTokenExpired()) {
    $client->refreshTokenWithAssertion();
}

$accessToken = $client->fetchAccessTokenWithAssertion()["access_token"];

ServiceRequestFactory::setInstance(new DefaultServiceRequest($accessToken));

$spreadsheet = (new Google\Spreadsheet\SpreadsheetService)
   ->getSpreadsheetFeed()
   ->getByTitle("Test Doc ");

// Get the first worksheet (tab)
$worksheets = $spreadsheet->getWorksheetFeed()->getEntries();
$worksheet = $worksheets[0];

/***********************/

/* @var $worksheet Google\Spreadsheet\Worksheet */
/* @var $CellFeed Google\Spreadsheet\CellFeed */

$CellFeed = $worksheet->getCellFeed();


/* @var $E Google\Spreadsheet\CellEntry */
foreach ($CellFeed->getEntries() as $E)
{
    //Iterate over each cell, import into database, and 'trying' to write back the id to the sheet
}
...