Open CNBroderick opened 7 months ago
PHP 5.6,下升级七牛SDK 7.0.4 到 最新版本7.11.0后,调用上传文件接口时,出现错误。
QiniuEnum 除了 SplitUploadVersion 以外,没有任何类依赖。
QiniuEnum继承了一个外部的Enum导致错误:找不到类。
QiniuEnum 看似很简洁,实则无比沉重,里面又继承了Enum:php-enum在此Enum中,还会引入依赖 sebastianbergmann/comparator
经过多次引入和修改,都没有能够使 QiniuEnum 正常的工作,最后放弃了继承 QiniuEnum 并 更改 SplitUploadVersion 为以下代码才正常工作。
<?php namespace Qiniu\Enum; final class SplitUploadVersion { const V1 = 'v1'; const V2 = 'v2'; public static function from($value) { if($value === self::V1) return self::V1; if($value === self::V2) return self::V2; return null; } }
@CNBroderick 是在人工管理依赖嘛?PHP 5.6.40 通过 Composer 安装 SDK 没有复现「找不到类」的错误。
是的,因为是早期的ThinkPHP3框架的项目,所以得需要人工引入。
请求原因
PHP 5.6,下升级七牛SDK 7.0.4 到 最新版本7.11.0后,调用上传文件接口时,出现错误。
QiniuEnum 除了 SplitUploadVersion 以外,没有任何类依赖。
错误原因
QiniuEnum继承了一个外部的Enum导致错误:找不到类。
QiniuEnum 看似很简洁,实则无比沉重,里面又继承了Enum:php-enum在此Enum中,还会引入依赖 sebastianbergmann/comparator
解决办法
经过多次引入和修改,都没有能够使 QiniuEnum 正常的工作,最后放弃了继承 QiniuEnum 并 更改 SplitUploadVersion 为以下代码才正常工作。