99designs / facade
此包已被放弃,不再维护。未建议替代包。
一个PHP5库,用于通过基于流请求/响应模式访问各种服务
1.0.0
2012-06-12 09:26 UTC
Requires
- php: >=5.3.2
This package is not auto-updated.
Last update: 2023-06-10 06:46:09 UTC
README
Facade 是一个用于高效消耗基于流协议(如HTTP)的开源库。
包括流式HTTP客户端和流式AWS S3客户端。99designs 使用这些来从AWS流式传输大型设计到上游客户端,而无需在任何时候将整个文件缓冲在内存或磁盘上。
示例
从磁盘流式传输文件到S3
<?php $s3 = new Facade_S3(getenv('AWS_ACCESS_KEY_ID'), getenv('AWS_SECRET_ACCESS_KEY')); $file = '/uploads/largeimage.jpg'; $response = $s3 ->put("/llamas/largeimage.jpg") ->setStream(Facade_Stream::fromFile($file)) ->setContentType('image/jpeg') ->setHeader('Content-MD5: '.base64_encode(md5_file($file, true))) ->send();
将S3文件流式传输到客户端
<?php $s3 = new Facade_S3(getenv('AWS_ACCESS_KEY_ID'), getenv('AWS_SECRET_ACCESS_KEY')); $response = $s3 ->get('/llamas/largeimage.jpg') ->send(); stream_copy_to_stream($response->getStream(), STDOUT);