0

我找不到用于文件存储在Google Apps Engine 项目的免费存储桶中并检索其内容的PHP 教程。这篇文章的想法是在正确创建 GAE 项目的情况下逐步完成。

1) 如果您创建了一个 GAE 项目,它已被授予 5Gb 的免费 G​​oogle Cloud Storage 存储桶。它的名字是“ YOUR_PROJECT_ID .appspot.com”

https://console.cloud.google.com/storage/browser

2)必须创建并分配服务帐户才能使用 SDK。

这里的步骤

3) 这是用于存储具有“Hello World”内容的文件的基本 PHP 代码。此代码可以从终端窗口执行。

<?php    

$filename = "tutorial.txt"; // filename in the bucket
$txt_toSave = "Hello Word"; // text content in the file  

// lets add code here

?>

php GCStorage_save_example.php

4) 这是从存储桶中检索文件内容的基本 PHP 代码。

<?php    
// lets add code here

echo $txt_fileContent;
?>

php GCStorage_retrieve_example.php

a) 如果必须授予权限,请随意添加步骤 b) 如果必须完成任何其他步骤,请随意添加

4

1 回答 1

0

您可以在 Google Cloud Storage 官方文档 [1] 中找到 Google Cloud Storage 操作的 PHP 代码示例。

例如,根据文档 [2] 在 Google Cloud Storage 中存储文件的示例如下:

use Google\Cloud\Storage\StorageClient;

/**
 * Upload a file.
 *
 * @param string $bucketName the name of your Google Cloud bucket.
 * @param string $objectName the name of the object.
 * @param string $source the path to the file to upload.
 *
 * @return Psr\Http\Message\StreamInterface
 */
function upload_object($bucketName, $objectName, $source)
{
    $storage = new StorageClient();
    $file = fopen($source, 'r');
    $bucket = $storage->bucket($bucketName);
    $object = $bucket->upload($file, [
        'name' => $objectName
    ]);
    printf('Uploaded %s to gs://%s/%s' . PHP_EOL, basename($source), $bucketName, $objectName);
}

您也可以按照操作方法 [3] 从存储桶中检索对象。请注意,这与从其他存储桶存储/下载对象没有什么不同,因为您可以指定从哪个存储桶拉/推。

于 2019-07-18T20:42:01.030 回答