Open lxepoo opened 7 years ago
有点惨...说明你的项目也没有命名空间嘛...
bwt..阿里的sdk真的很水.建议自己写
用composer autoload files来加载了,结果项目里有个Log类,和你们的Log类冲突了,报错Fatal error: Cannot declare class Log, because the name is already in use in E:\wwwroot\api-console\extra\aliyun-log\Aliyun\Log\sls.proto.php on line 129,这个有点致命了,因为你们的autoload方式所有类直接引入了全局名称空间,只要有任何一个地方和你们撞类名,你们这个SDK就不能用。
aliyun-log-php-sdk\Aliyun\Log\sls.proto.php
内的所有方法名,都加上前缀 Aliyun_
,并全局搜索和修改相关引用【这一步是关键】aliyun-log-php-sdk\Aliyun\Log\Client.php
内的 require_once realpath ( dirname ( __FILE__ ) . '/../../Log_Autoload.php' );
app/Libs/
composer.json
,增加 classmap
配置项 app/Libs/aliyun-log-php-sdk/Aliyun
(根据上一步放的位置决定)composer dumpautoload
, Finish~
用composer autoload files来加载了,结果项目里有个Log类,和你们的Log类冲突了,报错Fatal error: Cannot declare class Log, because the name is already in use in E:\wwwroot\api-console\extra\aliyun-log\Aliyun\Log\sls.proto.php on line 129,这个有点致命了,因为你们的autoload方式所有类直接引入了全局名称空间,只要有任何一个地方和你们撞类名,你们这个SDK就不能用。