我正在尝试通过PHP脚本生成在线Google电子表格。由于似乎没有用于创建电子表格的原生PHP API(只能找到Java和.NET),我认为最简单的方法是生成XLSX并将其转换为Google电子表格。
上传文件可以正常工作:
$mime = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';
$file = new Google_DriveFile();
$file->setTitle('My Spreadsheet');
$file->setMimeType($mime);
$data = file_get_contents('my_spreadsheet.xlsx');
$createdFile = $service->files->insert($file, array(
'data' => $data,
'mimeType' => $mime,
'convert' => true,
));
当它出现在Google云端硬盘中时,它只是一个普通的Excel文件。我必须在Google云端硬盘网络界面中右键单击它,然后在转换之前选择“在Google表格中打开”(但转换没有错误)。
如何强制立即转换文件?
答案 0 :(得分:0)
是的,有一个名为google spreadsheets api的api,只需在原始的https调用中使用它。你不需要一个特殊的php包装器虽然你可以使用zend,如果你必须:http://framework.zend.com/manual/1.12/en/zend.gdata.spreadsheets.html
答案 1 :(得分:0)
Google云端硬盘现在允许您上传文件并在转换时进行转换。您需要使用Google PHP SDK,但使用它非常简单。
我认为您的代码中出现错误的原因是$ mime是Google要求的源文件application/vnd.google-apps.spreadsheet
。