0

我有一个当前使用Guzzle的项目(由引导文件中的显式“require_once”加载 [作为 .phar])。

我一直在尝试从 Amazon 添加AWSSDKforPHP,以便我可以轻松处理上传到 Amazon S3。不幸的是,当我尝试包含该包(也打包为 .phar 文件)时,PHP 会抛出一个令人讨厌的错误:

 PHP Fatal error:  Cannot redeclare class Symfony\\Component\\ClassLoader\\UniversalClassLoader in phar:///usr/share/php/AWSSDKforPHP/aws.phar/vendor/symfony/class-loader/Symfony/Component/ClassLoader/UniversalClassLoader.php on line 62

我已经(完全)关闭了 APC,因为我之前已经看到 APC 引起了一些需要/包含问题。

我怀疑 PHP 会有这样一个尴尬的限制,即只能包含一次具有依赖关系的。...但我可能是错的。

4

1 回答 1

1

查看这两个库的 phar 存根,我不确定为什么它与 UniversalClassLoader 的 require_once 冲突。好消息是 AWS SDK for PHP 2 提供的 phar 还包含 Guzzle 库,因此您只需在应用程序中包含 aws.phar。

于 2012-11-15T04:23:59.227 回答