我是谷歌表格 API 的新手,目前我正在開發一個系統來將資料發送到谷歌表格。當我嘗試發送資料時,它顯示如下錯誤:無效值 [0][0]

下面是我的代碼行。
`
$client = getClientAuth();
$spreadsheet_ID = $this->spreadsheet->spreadsheetId;
$range = "Sheet1";
$values = $this->sheetData;
$this->service = new Sheets($client);
$body = new ValueRange([
'majorDimension' => 'ROWS',
'values' => [array_map(function($nv) {
return (is_null($nv)) ? "" : $nv;
},$values)]
]);
$params = ['valueInputOption' => 'RAW'];
$insert = ['insertDataOption' => 'INSERT_ROWS'];
//executing the request
$data = $this->service->spreadsheets_values->append($spreadsheet_ID, $range,
$body, $params, $insert);
return $data;
`
uj5u.com熱心網友回復:
從您的錯誤訊息和顯示腳本中,我認為在您的情況下,$values可能是一個二維陣列。我認為如果$values是一維陣列,則您的腳本有效。另外,請包含'insertDataOption' => 'INSERT_ROWS'在$params. 那么,在這種情況下,下面的修改呢?
從:
$body = new ValueRange([
'majorDimension' => 'ROWS',
'values' => [array_map(function($nv) {
return (is_null($nv)) ? "" : $nv;
},$values)]
]);
$params = ['valueInputOption' => 'RAW'];
$insert = ['insertDataOption' => 'INSERT_ROWS'];
//executing the request
$data = $this->service->spreadsheets_values->append($spreadsheet_ID, $range,
$body, $params, $insert);
至:
$body = new ValueRange([
'majorDimension' => 'ROWS',
'values' => array_map(function($row) {
return array_map(function($col) {
return (is_null($col)) ? "" : $col;
}, $row);
}, $values)
]);
$params = ['valueInputOption' => 'RAW', 'insertDataOption' => 'INSERT_ROWS'];
$data = $service->spreadsheets_values->append($spreadsheet_ID, $range, $body, $params);
或者
$body = new Google_Service_Sheets_ValueRange([
'majorDimension' => 'ROWS',
'values' => array_map(function($row) {
return array_map(function($col) {
return (is_null($col)) ? "" : $col;
}, $row);
}, $values)
]);
$params = ['valueInputOption' => 'RAW', 'insertDataOption' => 'INSERT_ROWS'];
$data = $service->spreadsheets_values->append($spreadsheet_ID, $range, $body, $params);
筆記:
在使用箭頭函式的時候,我認為可以使用下面的修改。
從
'values' => array_map(function($row) { return array_map(function($col) { return (is_null($col)) ? "" : $col; }, $row); }, $values)至
'values' => array_map(fn($row) => array_map(fn($col) => (is_null($col)) ? "" : $col, $row), $values)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/533063.html
標籤:php谷歌表格谷歌表格 API
