我尝试使用Google表格API从电子表格(ID)中获取所有表格, 我还没有找到REST方法来做到这一点。
我的代码是
$range[]= 'sheet1!A:C';
$response = $service->spreadsheets_values->get($spreadsheetId, $range);
$values = $response->getValues();
$ range的数组或字符串仅在一个值时有效。 具有mlti值的数组在REST中提供了错误的URL:
$range[]= 'sheet1!A:C';
$range[]= 'SHEET2!A:C';
$response = $service->spreadsheets_values->get($spreadsheetId, $range);
返回以下错误:
致命错误:未捕获的异常' Google_Service_Exception'同 消息'调用GET时出错 https://sheets.googleapis.com/v4/spreadsheets/[spreadsheetID]/values/Config%21A%3AC,Carte%21A%3AC?key=[my api key] :( 400)无法解析范围:sheet1!A:C,SHEET2!A:C'在 C:\ Program Files \ EasyPHP-12.1 \ www ... \ src \ Google \ Http \ REST.php:110 堆栈跟踪:#0 C:\ Program 文件\的EasyPHP-12.1 \ WWW \ SRC \谷歌\ HTTP \ REST.php(62): Google_Http_REST :: decodeHttpResponse(对象(Google_Http_Request) 对象(Google_Client))#1 [内部函数]: Google_Http_REST :: doExecute(对象(Google_Client) 对象(Google_Http_Request))#2 C:\ Program 文件\的EasyPHP-12.1 \ WWW \ SRC \谷歌\工作\ Runner.php(174): call_user_func_array(Array,Array)#3 C:\ Program 文件\的EasyPHP-12.1 \ WWW .... \ SRC \谷歌\ HTTP \ REST.php(46): Google_Task_Runner-> run()#4 C:\ Program 文件\的EasyPHP-12.1 \ WWW \ SRC \谷歌\ Client.php(593): Google_Http_REST :: execute(对象(C:\ Program中的Google_Client) 第110行的Files \ EasyPHP-12.1 \ www ... \ src \ Google \ Http \ REST.php
由于
答案 0 :(得分:1)
require_once(mpdf/vendor/autoload.php);
采用单一范围。您收到错误是因为您尝试将其发送两次。
您应该致电spreadsheet.values.batchget
$service->spreadsheets_values->get($spreadsheetId, $range);
注释代码直接从找到的文档here
中删除