Php 使用'分析错误;使用';在谷歌云中
我正在尝试使用此文档和文档将一些表单数据发布到Google数据存储。我正在努力了解如何将表单数据发布到数据存储中,但当我遇到以下错误时,我认为我已经破解了它Php 使用'分析错误;使用';在谷歌云中,php,google-app-engine,transactions,google-cloud-platform,google-cloud-datastore,Php,Google App Engine,Transactions,Google Cloud Platform,Google Cloud Datastore,我正在尝试使用此文档和文档将一些表单数据发布到Google数据存储。我正在努力了解如何将表单数据发布到数据存储中,但当我遇到以下错误时,我认为我已经破解了它 Parse error: syntax error, unexpected 'use' (T_USE) in record-usage.php on line 23 因此,我的问题分为两部分: 如何将数据从表单发布到数据存储?(文档中的示例似乎提供了两种不同的向商店发布的方式) 如何修复此语法错误 这是我的代码(实际上是下面示例中的第7行
Parse error: syntax error, unexpected 'use' (T_USE) in record-usage.php on line 23
因此,我的问题分为两部分:
use
。把它想象成一个进口货
相反,将其移到方法之外,但要移到命名空间内部。最简单的方法就是把它移到文件的顶部
写入数据
查看此代码:
$transaction->updateBatch([$formdata]);
$transaction->commit();
我想你误解了我的意思。在它给出的代码示例中,它首先通过批处理查找从数据存储中读取实体,然后使用以下命令将其作为批处理写回:
$transaction->updateBatch([$fromAccount, $toAccount]);
在该示例中,$fromcount
和$toAccount
是带有键的适当实体
在您的示例中,您试图批量写入一组随机数据。因为您只写了一条记录,所以应该删除该代码
代码的第二部分,创建一个实体,然后将其向上插入,应该可以工作。如果您最终需要在一个事务中写入多个实体,那么您将在
updateBatch
方法中使用$task
,而不是原始数据。有效,谢谢。知道在哪里可以找到一些将数据发布到数据存储的示例代码吗?自从这篇文章发表以来,对PHP的支持已经增加了,但我觉得这些文档并没有多大帮助(参见我文章的前言)。Google Cloud PHP中数据存储的使用文档可以在这里找到:我编写了客户端,因此如果您有任何文档中没有回答的问题,请告诉我!我还快速创建了一个代码工作版本的快速工作示例。它不是100%的你如何使用它,但它应该给你一个模板来工作。请注意,在最终的应用程序中,您应该执行一些输入验证,以防止恶意用户利用您的脚本。但这超出了本例的范围。非常感谢,真的很有帮助。然而,我得到了这个错误,致命错误:在第84行的/base/data/home/apps/e~brookes room usage/1.399853826395726238/record-usage.php中找不到类“Google\Cloud\Datastore\DatastoreClient”,所以我可能没有将我的应用程序正确指向该类(对不起,OO-php不是我的强项)我找到了添加settings.yml文件的方法,但我不知道如何找到我的客户端ID。是的,您最好通过composer安装Google Cloud PHP。settings.yml文件用于为PHP配置appengine。本指南详细介绍了如何开始使用appengine:
$transaction->updateBatch([$fromAccount, $toAccount]);