繁体   English   中英

在PHP中的S3亚马逊桶上打开远程流

[英]Open remote stream on bucket S3 amazon in php

这是我的代码:

    $client = new S3Client([
        'version' => 'latest',
        'region'  => $region,
        'credentials' => ['key' => $key, 'secret'  => $secret]
    ]);

    $client->registerStreamWrapper();

    $filename = md5(gethostname()) .'_'. basename($file);

    $bucketStream = fopen("s3://{$bucket}/{$filename}", 'w+');

如果列出我的存储桶,则会得到它们的列表,因此这不是连接问题。 我无法将任何文件上传到S3的问题。 并且: $bucketStreamfalse

您可以使用fopen()和“ w”,“ x”或“ a”流访问模式通过流式传输数据来上传较大的文件。 Amazon S3流包装器不支持同时读取和写入流(例如“ r +”,“ w +”等)。 这是因为HTTP协议不允许同时进行读写。

尝试将w+更改为w

参考: http : //docs.aws.amazon.com/aws-sdk-php/v2/guide/feature-s3-stream-wrapper.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM