如何在共享托管计划中使用PHP中的Google Docs API?

如何在共享托管计划中使用PHP中的Google Docs API?,php,zend-framework,google-docs,google-docs-api,zend-gdata,Php,Zend Framework,Google Docs,Google Docs Api,Zend Gdata,我想在谷歌电子表格中读写特定的单元格,但我对互联网上关于如何读写的大量信息感到困惑。我只能访问共享主机,这意味着FTP访问和控制面板,而不是虚拟服务器 在GoogleDocs官方API页面中,它只有版本1中的PHP支持,这表示它已被弃用,并且已经是版本3了,所以我不应该开始使用它 在这个页面上:它说PHP客户端库是 作为zend的一部分分发 而在这一页上:它说 客户端库是 开源Zend框架,但可以 也可以作为独立软件下载 版本 我最大的问题是我从未使用过Zend,我不知道如何使用它,也不知道如何

我想在谷歌电子表格中读写特定的单元格,但我对互联网上关于如何读写的大量信息感到困惑。我只能访问共享主机,这意味着FTP访问和控制面板,而不是虚拟服务器

在GoogleDocs官方API页面中,它只有版本1中的PHP支持,这表示它已被弃用,并且已经是版本3了,所以我不应该开始使用它

在这个页面上:它说PHP客户端库是

作为zend的一部分分发

而在这一页上:它说

客户端库是 开源Zend框架,但可以 也可以作为独立软件下载 版本

我最大的问题是我从未使用过Zend,我不知道如何使用它,也不知道如何安装/更新它的软件包。是否可以从一个简单的共享宿主用户安装/更新此框架及其包?或者我被某个托管公司的服务器上的内容所困扰

我已从该页面下载了最新版本:并且在其安装文件中显示:

Zend框架不需要特殊的 安装步骤。只需下载 框架,将其提取到 要将其保存在其中的文件夹, 并将库目录添加到 PHP包含路径。在中使用组件的步骤 在extras库中,添加 附加/库目录到您的PHP 还包括_路径。如果你愿意 想要使用Zend_工具,只需添加 用于Windows的bin/zf.bat或bin/zf.sh 对你的系统还有什么别的要求吗 可执行路径

我认为include_path意味着php.ini中的某个变量,而不是我可以访问的东西。 我可以简单地将zend下载/解压缩到我的文件夹中,并在代码的开头包含一次吗?

看看这个:

看看这个:


您需要联系您的主机提供商,查看他们是否安装了Zend framework。如果有,请询问他们包含路径

如果没有,您可以下载该库,解压缩它,然后将其上载到您的web根目录

GDATA模块是Zend框架的一部分

假设您将框架上载到web根目录中名为Zend的文件夹中

/www/Zend/

然后,您需要告诉php使用它作为您的include路径,如下所示

set_include_path($_SERVER['DOCUMENT_ROOT'] . '/Zend/');
从那里,您可以使用autoLoader函数处理从那里开始的类加载,就像这样

require_once 'Loader/Autoloader.php';
$autoloader = Zend_Loader_Autoloader::getInstance();
然后按照GDATA库的文档进行操作

$service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME;
$client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service);
$spreadsheetService = new Zend_Gdata_Spreadsheets($client);

您需要联系您的主机提供商,查看他们是否安装了Zend framework。如果有,请询问他们包含路径

如果没有,您可以下载该库,解压缩它,然后将其上载到您的web根目录

GDATA模块是Zend框架的一部分

假设您将框架上载到web根目录中名为Zend的文件夹中

/www/Zend/

然后,您需要告诉php使用它作为您的include路径,如下所示

set_include_path($_SERVER['DOCUMENT_ROOT'] . '/Zend/');
从那里,您可以使用autoLoader函数处理从那里开始的类加载,就像这样

require_once 'Loader/Autoloader.php';
$autoloader = Zend_Loader_Autoloader::getInstance();
然后按照GDATA库的文档进行操作

$service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME;
$client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service);
$spreadsheetService = new Zend_Gdata_Spreadsheets($client);

当然,只有在必要的情况下,include_once才可能完成这项工作。不,Zend和Zend AutoLoader中的许多调用都需要其他文件,格式为require_once Zend\File.php。因此,除非您自己包含所有文件,否则设置包含路径可能更容易。但您说的是,我应该下载整个Zend框架,并将其解压缩到FTP文件夹中的某个位置?如果主机上已经安装了Zend版本,并且我想使用我提供的版本,会发生什么情况?set_include_path是否优先于已安装的路径?文档中说明,此组件可以在没有zend framework的情况下使用。所以我假设您只需将此组件上载到Web服务器并调用set_include_path。如果阅读set_include_path的文档,您会看到它将覆盖include_path。在php文档的代码示例中,它显示了如何使用get_include_path,并在设置新的include_路径时将您的路径添加到其中。您可以完全控制include_路径。当然,只有在必要时,include_once才可能完成此任务。不,Zend和Zend AutoLoader中的许多调用都需要其他文件,格式为require_once Zend\File.php。因此,除非您自己包含所有文件,否则设置包含路径可能更容易。但您说的是,我应该下载整个Zend框架,并将其解压缩到FTP文件夹中的某个位置?如果主机上已经安装了Zend版本,并且我想使用我提供的版本,会发生什么情况?set_include_path是否优先于已安装的路径?文档中说明,此组件可以在没有zend framework的情况下使用。所以我假设您只需将此组件上载到Web服务器并调用set_include_path。如果阅读set_include_path的文档,您会看到它将覆盖include_path。在php上的代码示例中 在设置新的包含路径时,使用get_include_path并将您的路径添加到其中所显示的文档。您可以完全控制include_路径。