【问题标题】:How to create an empty spreadsheet using Zend GData如何使用 Zend GData 创建一个空的电子表格
【发布时间】:2013-03-06 16:10:22
【问题描述】:

如何使用 Zends GData Library 创建一个新的空电子表格?

【问题讨论】:

    标签: zend-framework spreadsheet gdata zend-gdata


    【解决方案1】:

    根据Google Documents List API,要创建一个新的空电子表格:按照Creating a new document or file with metadata only 中的说明进行操作。这样做时,请使用类别术语http://schemas.google.com/docs/2007#spreadsheet

    使用 Zend GData 库,它可能看起来像这样:

    // Load Zend library
    require_once('Zend/Loader.php');
    Zend_Loader::loadClass('Zend_Gdata');
    Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
    Zend_Loader::loadClass('Zend_Gdata_Docs');
    
    // Authentication
    $client = Zend_Gdata_ClientLogin::getHttpClient('you@there.com', 'sunshine-', Zend_Gdata_Docs::AUTH_SERVICE_NAME);
    
    // Get interface to Documents List API
    $docs = new Zend_Gdata_Docs($client);
    
    // Create new document
    $data = new Zend_Gdata_Docs_DocumentListEntry();
    $data->setCategory(
          array(new Zend_Gdata_App_Extension_Category(
                  "http://schemas.google.com/docs/2007#spreadsheet",
                  "http://schemas.google.com/g/2005#kind"
    )));
    $data->setTitle(new Zend_Gdata_App_Extension_Title("My brand new spreadsheet", null));
    
    // Add document to your list
    $doc = $docs->insertDocument($data, Zend_Gdata_Docs::DOCUMENTS_LIST_FEED_URI);
    
    // Display document ID
    print($doc->getId());
    

    【讨论】:

      【解决方案2】:

      你现在不能这样做。

      Spreadsheets 数据 API 目前不提供一种方法 以编程方式创建或删除电子表格。

      引用official documentation

      【讨论】:

      • 是的,没错,但如果我记得的话,您可以使用 google-drive-api 执行此操作。我在某处的 google DrEdit 教程中看到它。
      【解决方案3】:

      我是这样做的:

           $service = Zend_Gdata_Docs::AUTH_SERVICE_NAME;
           $client = Zend_Gdata_ClientLogin::getHttpClient('USERNAME', 'PASSOWRD', $service);
           $docs = new Zend_Gdata_Docs($client);
      
           // A file I use as a template for this [ based on the extension is the type of document that will be created] 
           // see: http://framework.zend.com/manual/en/zend.gdata.docs.html
           $fileToUpload = 'Rates-Template.xls'; 
           $newDocumentEntry =  $docs->uploadFile($fileToUpload, 'Spreadsheet Title Here',null, Zend_Gdata_Docs::DOCUMENTS_LIST_FEED_URI);
      

      【讨论】:

      • 我试了你的方法,就是报错,上传错误,不直接用form可以上传文件吗?
      猜你喜欢
      • 2011-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-04
      • 2012-08-01
      • 1970-01-01
      • 2012-07-20
      相关资源
      最近更新 更多