Google Sheets API 是 Google 提供的一套 RESTful API,允许开发者以编程方式读取、编辑和管理 Google Sheets 电子表格。通过该 API,可以实现自动化数据操作、批量更新、数据同步等功能。
composer require google/apiclient:^2.0
require_once __DIR__ . '/vendor/autoload.php';
function getClient()
{
$client = new Google_Client();
$client->setApplicationName('Google Sheets API PHP Quickstart');
$client->setScopes(Google_Service_Sheets::SPREADSHEETS);
$client->setAuthConfig('credentials.json');
$client->setAccessType('offline');
return $client;
}
function readSheet($spreadsheetId, $range)
{
$client = getClient();
$service = new Google_Service_Sheets($client);
$response = $service->spreadsheets_values->get($spreadsheetId, $range);
$values = $response->getValues();
if (empty($values)) {
echo "No data found.\n";
} else {
foreach ($values as $row) {
echo implode(", ", $row) . "\n";
}
}
}
// 使用示例
$spreadsheetId = '你的电子表格ID';
$range = 'Sheet1!A1:C3';
readSheet($spreadsheetId, $range);
function writeSheet($spreadsheetId, $range, $values)
{
$client = getClient();
$service = new Google_Service_Sheets($client);
$body = new Google_Service_Sheets_ValueRange([
'values' => $values
]);
$params = [
'valueInputOption' => 'RAW'
];
$result = $service->spreadsheets_values->update(
$spreadsheetId,
$range,
$body,
$params
);
printf("%d cells updated.\n", $result->getUpdatedCells());
}
// 使用示例
$spreadsheetId = '你的电子表格ID';
$range = 'Sheet1!A1';
$values = [
['Name', 'Age', 'City'],
['John', '30', 'New York'],
['Jane', '25', 'London']
];
writeSheet($spreadsheetId, $range, $values);
原因:通常是由于凭证文件路径错误或权限不足导致。
解决方案:
原因:服务账户没有访问特定电子表格的权限。
解决方案:
原因:网络问题或 API 配额限制。
解决方案:
通过以上指南,您应该能够快速开始使用 PHP 与 Google Sheets API 进行交互。根据具体需求,您可以进一步探索 API 提供的更多功能。
没有搜到相关的文章