Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用Google Sheets API写入工作表_Php_Google Spreadsheet Api - Fatal编程技术网

Php 使用Google Sheets API写入工作表

Php 使用Google Sheets API写入工作表,php,google-spreadsheet-api,Php,Google Spreadsheet Api,我想将数据写入工作表: $spreadsheetId = 'xxx'; $range = 'Test!A1:D5'; $values = [ 'range' => "A1", 'majorDimension' => 'DIMENSION_UNSPECIFIED', 'values' => [ ["Item", "Cost", "Stocked", "Ship Date"], ["Wheel", "$20.50", "4", "3/1/2016"],

我想将数据写入工作表:

$spreadsheetId = 'xxx';
$range = 'Test!A1:D5';

$values = [
  'range' => "A1",
  'majorDimension' => 'DIMENSION_UNSPECIFIED',
  'values' => [
    ["Item", "Cost", "Stocked", "Ship Date"],
    ["Wheel", "$20.50", "4", "3/1/2016"],
    ["Door", "$15", "2", "3/15/2016"],
    ["Engine", "$100", "1", "30/20/2016"],
  ],
];

$body = new Google_Service_Sheets_ValueRange(array(
  'values' => $values
));
$params = array(
  'valueInputOption' => 'RAW'
);
$result = $service->spreadsheets_values->update($spreadsheetId, $range, $body, $params);
但在日志中我看到:

PHP Fatal error:  Uncaught exception 'Google_Service_Exception' with message '{
  "error": {
    "code": 400,
    "message": "Invalid JSON payload received. Unknown name \"range\" at 'data.values': Cannot find field.\nInvalid JSON payload received. Unknown name \"major_dimension\" at 'data.values': Cannot find field.",
    "errors": [
      {
        "message": "Invalid JSON payload received. Unknown name \"range\" at 'data.values': Cannot find field.\nInvalid JSON payload received. Unknown name \"major_dimension\" at 'data.values': Cannot find field.",
        "domain": "global",
        "reason": "badRequest"
      }
    ],
    "status": "INVALID_ARGUMENT"
  }
}
我做错了什么?我将非常感谢为您提供的示例代码:)


在示例中,没有足够的信息()

您就快到了。不要忘记包括图纸名称

 "range": "Sheet1!A1:D5"

查看更多样本。

您就快到了。不要忘记包括图纸名称

 "range": "Sheet1!A1:D5"
查看更多样本。

尝试以下方法:

$spreadsheetId = 'xxx';
$range = 'Test!A1:D5';

$values = [
    ["Item", "Cost", "Stocked", "Ship Date"],
    ["Wheel", "$20.50", "4", "3/1/2016"],
    ["Door", "$15", "2", "3/15/2016"],
    ["Engine", "$100", "1", "30/20/2016"],
];

$updateBody = new Google_Service_Sheets_ValueRange([
    'range' => $range,
    'majorDimension' => 'ROWS',
    'values' => $values,
]);

$valueInputOption = 'USER_ENTERED'; // Or RAW       

$params = [
  'valueInputOption' => $valueInputOption
];

$result = $this->sheetsService->spreadsheets_values->update(
    $spreadsheetID,
    $updateRange,
    $updateBody,
    $params
); 
试试这个:

$spreadsheetId = 'xxx';
$range = 'Test!A1:D5';

$values = [
    ["Item", "Cost", "Stocked", "Ship Date"],
    ["Wheel", "$20.50", "4", "3/1/2016"],
    ["Door", "$15", "2", "3/15/2016"],
    ["Engine", "$100", "1", "30/20/2016"],
];

$updateBody = new Google_Service_Sheets_ValueRange([
    'range' => $range,
    'majorDimension' => 'ROWS',
    'values' => $values,
]);

$valueInputOption = 'USER_ENTERED'; // Or RAW       

$params = [
  'valueInputOption' => $valueInputOption
];

$result = $this->sheetsService->spreadsheets_values->update(
    $spreadsheetID,
    $updateRange,
    $updateBody,
    $params
); 

这里的情况并非如此,但我通过从
values
数组中的项中删除
NULL
值,解决了类似的问题


谷歌的PHP库似乎很难解析这些值,最终生成了无效的JSON负载。

这里不是这样,但我通过从
数组中的项中删除
NULL
值解决了类似的问题


谷歌的PHP库似乎很难解析这些值,最终生成了无效的JSON负载。

相同的结果:-(我只熟悉JS实现。但是官方的PHP实现是用于在单元格上写入的。相同的结果:-(我只熟悉JS实现。但是官方的PHP实现是用于在单元格上编写的。您解决了吗?只使用了。感谢支持!您解决了吗?只使用了。感谢支持!必须设置$updateRange=$range='Test!A1:D5'才能工作必须设置$updateRange=$range='Test!A1:D5'才能工作