首页 > 解决方案 > 您如何在 PHP 中使用 Google Firestore 中的“字节”数据类型?

问题描述

似乎表明 Google Firestore 支持使用“字节”数据类型存储二进制数据。你如何使用官方客户端做到这一点?我已经尝试了下面的代码并得到了错误PHP Fatal error: Uncaught Exception: Expect utf-8 encoding.

$compressed = gzcompress('Hello World');

$firestoreClient = $eaapen->firestore->client;

$firestoreClient->collection('test')->newDocument()->set([
    'data' => $compressed
]);

标签: phpgoogle-cloud-firestore

解决方案


您不能直接将字节类型数据添加到 Firestore。您将必须使用以下内容创建一个 blob

$blob = $firestoreClient->blob('yourfile'));

然后将其添加到您的 Firestore。但实际上这不是一个好主意,因为Firestore 中的文档硬限制为 1 MiB,您可以使用字节数据轻松访问它。

我强烈建议在这种情况下使用Cloud Storage


推荐阅读