Composer的加载过程, composer sdk不能加载, 外部sdk调用

下载最新版 https://getcomposer.org/Composer-Setup.exe
适用于PHP8以上版本,如果下载太慢到这里下载 https://download.youkuaiyun.com/download/kentrl/88227084

先解决源
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

注意: 不要删除composer.lock

composer会先读取composer.lock 文件,如果不存在 composer.lock 文件,Composer 将读取 composer.json 并创建锁文件。

1: 首先必须在class上面引入sdk的命名空间 , 这样在使用控制器的时候就直接use了sdk , 但此时并不能自动关联SDK的相关依赖.

2: 在调用sdk之前require_once执行加载composer的autoload.php, 这样就能够将SDK完整引入进来 require_once(EXT_PATH . 'vendor/autoload.php');

例如: 如下代码
注意 先use SDK的命名空间 , 再加载composer的autoload.php , 最后再调用需要的SDK.
在这里插入图片描述

阿里云 Composer 全量镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

composer版本到指定版本:composer self-update 2.0.4
composer升级到最新版本:composer self-update

优化必不可少

安装的时候可以使用
composer install -o(等同于--optimize-autoloader)

部署到线上时候需要执行一下命令:composer dump-autoload --optimize
部署到线上时候非安装可使用命令:composer dump-autoload -o(等同于--optimize)
如果还想优化的在深入一点,可以使用
composer dump-autoload -a(等同于 --classmap-authoritative)
-o和-a共同点都是生成了classmap,加快了查找速度,不同点在于,如果classmap找不到目标类的话,-o的时候会继续在文件系统中查找,而-a则不会继续查找。

提示:

使用Laravel开发期间千万不要用-a,否则你新建的任何路由都不会生效,会报
Class App\Http\Controllers\TestController does not exist
因为它不存在与classmap中,并且禁止继续查找,所以会出现问题。
composer dump-autoload重新不带-a参数composer一下即可。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

肖坤超

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值