我正在使用此库https://github.com/asimlqt/php-google-spreadsheet-client与Google的电子表格API进行互动。
使用提供的示例,我有这个wip代码:
$request = new Google\Spreadsheet\Request($access['access_token']);
$serviceRequest = new Google\Spreadsheet\DefaultServiceRequest($request);
Google\Spreadsheet\ServiceRequestFactory::setInstance($serviceRequest);
$spreadsheetService = new Google\Spreadsheet\SpreadsheetService();
$spreadsheetFeed = $spreadsheetService->getSpreadsheets();
var_dump($spreadsheetFeed);
$spreadsheet = $spreadsheetFeed->getByTitle('a spreadsheet');
echo "<h1>Start spreadsheet single feed</h1>";
var_dump($spreadsheet);
最后一行意外地打印为空。 我希望熟悉图书馆的人能够朝着正确的方向推动我。
BTW,这就是$ spreadsheetFeed转储显示的内容:
object(Google\Spreadsheet\SpreadsheetFeed)#263 (2) {
["xml":"Google\Spreadsheet\SpreadsheetFeed":private]=>
object(SimpleXMLElement)#200 (5) { ["id"]=> string(63)
"https://spreadsheets.google.com/feeds/spreadsheets/private/full"
["updated"]=> string(24) "2014-04-22T15:41:32.296Z"
["category"]=> object(SimpleXMLElement)#244 (1) {
["@attributes"]=>
array(2) {
["scheme"]=> string(43) "http://schemas.google.com/spreadsheets/2006"
["term"]=> string(55) "http://schemas.google.com/spreadsheets/2006#spreadsheet"
}
}
["title"]=> string(100) "Available Spreadsheets - <redacted!>"
["link"]=> array(3) {
[0]=> object(SimpleXMLElement)#243 (1) {
["@attributes"]=> array(3) {
["rel"]=> string(9) "alternate"
["type"]=> string(9) "text/html" ["href"]=> string(22) "http://docs.google.com"
}
}
[1]=> object(SimpleXMLElement)#245 (1) {
["@attributes"]=> array(3) {
["rel"]=> string(37) "http://schemas.google.com/g/2005#feed"
["type"]=> string(20) "application/atom+xml"
["href"]=> string(63) "https://spreadsheets.google.com/feeds/spreadsheets/private/full"
}
}
[2]=> object(SimpleXMLElement)#246 (1) {
["@attributes"]=> array(3) {
["rel"]=> string(4) "self"
["type"]=> string(20) "application/atom+xml"
["href"]=> string(63) "https://spreadsheets.google.com/feeds/spreadsheets/private/full"
}
}
}
}
["storage":"ArrayIterator":private]=> array(0) {
}
}
它似乎根本不包含任何高度混乱的电子表格,因为我通过驱动器api确认在代码中早先成功存在所需的电子表格。显然,我使用的两个库之间存在某种差异,没有记录,但我不知道要调试它。
驱动程序库是google inhouse one https://github.com/google/google-api-php-client
答案 0 :(得分:2)
我无法查看应该在spreadsheetFeed中显示的现有工作表,我找到了karl kranich在他的网站上发现的文章,声明该文档需要与具有编辑权限的誓言开发人员电子邮件地址共享。与编辑权限共享后,我现在在列表中看到它。
答案 1 :(得分:0)
只是给出一些解决方案(也许是其他人的指针)。
我回过头来解决这个问题,并发现谷歌电子表格api中有一个未说出口的假设,即所访问的文件是本机谷歌电子表格。一旦我改变文件创建来创建而不是.xls文件,一切都自行解决。