superbalist/flysystem-google-storage
最新稳定版本:7.2.2
Composer 安装命令:
composer require superbalist/flysystem-google-storage
包简介
Flysystem adapter for Google Cloud Storage
README 文档
README
A Google Cloud Storage adapter for flysystem - a PHP filesystem abstraction.
Installation
composer require superbalist/flysystem-google-storage
Integrations
Want to get started quickly? Check out some of these integrations:
Usage
use Google\Cloud\Storage\StorageClient; use League\Flysystem\Filesystem; use Superbalist\Flysystem\GoogleStorage\GoogleStorageAdapter; /** * The credentials will be auto-loaded by the Google Cloud Client. * * 1. The client will first look at the GOOGLE_APPLICATION_CREDENTIALS env var. * You can use ```putenv('GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json');``` to set the location of your credentials file. * * 2. The client will look for the credentials file at the following paths: * - windows: %APPDATA%/gcloud/application_default_credentials.json * - others: $HOME/.config/gcloud/application_default_credentials.json * * If running in Google App Engine, the built-in service account associated with the application will be used. * If running in Google Compute Engine, the built-in service account associated with the virtual machine instance will be used. */ $storageClient = new StorageClient([ 'projectId' => 'your-project-id', ]); $bucket = $storageClient->bucket('your-bucket-name'); $adapter = new GoogleStorageAdapter($storageClient, $bucket); $filesystem = new Filesystem($adapter); /** * The credentials are manually specified by passing in a keyFilePath. */ $storageClient = new StorageClient([ 'projectId' => 'your-project-id', 'keyFilePath' => '/path/to/service-account.json', ]); $bucket = $storageClient->bucket('your-bucket-name'); $adapter = new GoogleStorageAdapter($storageClient, $bucket); $filesystem = new Filesystem($adapter); // write a file $filesystem->write('path/to/file.txt', 'contents'); // update a file $filesystem->update('path/to/file.txt', 'new contents'); // read a file $contents = $filesystem->read('path/to/file.txt'); // check if a file exists $exists = $filesystem->has('path/to/file.txt'); // delete a file $filesystem->delete('path/to/file.txt'); // rename a file $filesystem->rename('filename.txt', 'newname.txt'); // copy a file $filesystem->copy('filename.txt', 'duplicate.txt'); // delete a directory $filesystem->deleteDir('path/to/directory'); // see http://flysystem.thephpleague.com/api/ for full list of available functionality
Google Storage specifics
When using a custom storage uri the bucket name will not prepended to the file path.
$storageClient = new StorageClient([ 'projectId' => 'your-project-id', ]); $bucket = $storageClient->bucket('your-bucket-name'); $adapter = new GoogleStorageAdapter($storageClient, $bucket); // uri defaults to "https://storage.googleapis.com" $filesystem = new Filesystem($adapter); $filesystem->getUrl('path/to/file.txt'); // "https://storage.googleapis.com/your-bucket-name/path/to/file.txt" // set custom storage uri $adapter->setStorageApiUri('http://example.com'); $filesystem = new Filesystem($adapter); $filesystem->getUrl('path/to/file.txt'); // "http://example.com/path/to/file.txt" // You can also prefix the file path if needed. $adapter->setStorageApiUri('http://example.com'); $adapter->setPathPrefix('extra-folder/another-folder/'); $filesystem = new Filesystem($adapter); $filesystem->getUrl('path/to/file.txt'); // "http://example.com/extra-folder/another-folder/path/to/file.txt"
统计信息
- 总下载量: 20.32M
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 268
- 点击次数: 1
- 依赖项目数: 40
- 推荐数: 9
其他信息
- 授权协议: MIT
- 更新时间: 2026-01-04