我想知道有没有一种简单的方法可以将 AWS PHP SDK 减少为仅使用 S3 ?我试图删除某些目录,但有这么多,这将花费令人难以置信的时间,而且根据我删除的文件(21,6Mo - 2 368 个元素(我有很多错误?!是否可以知道仅将S3与SDK PHP一起使用所需的基本文件的体系结构?
我找到了有关此主题的旧帖子,但文件结构已更改,它们不再是最新的。
完整的SDK非常繁重,有很多文件,我不需要将我的源代码与优化保持合理的大小。
感谢您的帮助
SDK 本身现在有一个(测试版(功能来帮助你。查看 https://github.com/aws/aws-sdk-php/tree/master/src/Script/Composer
基本上,您需要带有 composer 的框架,然后指定一个脚本来删除未使用的服务,然后根据它们的根命名空间定义要保留的服务。
下面给出了页面中的示例
{
"require": {
"aws/aws-sdk-php": "<version here>"
},
"scripts": {
"pre-autoload-dump": "Aws\Script\Composer\Composer::removeUnusedServices"
},
"extra": {
"aws/aws-sdk-php": [
"Ec2",
"CloudWatch"
]
}
}
不幸的是,要使用SDK,您需要使用整个目录(及其所有单独的依赖项(。
虽然您可以修剪单个目录和文件,但您将负责维护它,包括可能需要其他类的新功能
拉入 SDK 的最佳做法是使用编辑器依赖项管理器。
如果您正在寻找更轻的版本,则需要寻找其他人的实现或查看实施您自己的库以与 AWS S3 API 终端节点进行交互。
我强烈推荐 https://async-aws.com/。您可以单独安装每个组件。也许它没有涵盖所有AWS功能,但S3支持多年。
> Nicolas and Chris,
一篇与WordPress插件相关的博客文章将我带到了开发人员Ian Jones的S3 SDK Git项目,该项目可能有助于为您或将来的其他人解决此问题。博客文章解释了代码背后的背景和推理。
这是他编写的脚本,用于下载 AWS PHP SDK v3,将其剥离为相关的 S3 功能,然后应用自定义命名空间以避免潜在的冲突。
希望自己尽快尝试一下,但也可用于 Rekognition API(但我处于初学者水平!
https://gist.github.com/ianmjones/55eb1ace80517f951e392b95a65f277b
问候 格雷厄姆