Yansongda Pay可通过五种Composer方式安装:一、标准命令composer require yansongda/pay:~3.7.0 -vvv;二、低/高PHP版本需约束版本并补装Guzzle;三、离线环境先打包再上传覆盖;四、多框架共存时用独立pay-composer.json隔离;五、验证用class_exists和Pay::alipay([])检测。

如果您正在使用ThinkPHP框架开发项目,并希望快速集成微信、支付宝等主流支付渠道,则需要安装Yansongda Pay这一高度抽象的PHP支付SDK。以下是多种可行的Composer安装方式及配套操作步骤:
一、标准Composer全局安装方式
该方法适用于所有ThinkPHP版本(5.x/6.x/7.x),通过项目根目录执行命令,将yansongda/pay作为依赖包直接写入composer.json并下载至vendor目录。
1、打开终端或命令行工具,进入ThinkPHP项目的根目录(即包含composer.json文件的目录)。
2、执行标准安装命令:composer require yansongda/pay:~3.7.0 -vvv。
立即学习“PHP免费学习笔记(深入)”;
3、等待安装完成,确认vendor/yansongda/pay目录已成功生成且包含src、config、exceptions等子目录。
二、指定PHP版本兼容性安装方式
当项目运行在PHP 7.3以下或PHP 8.2+等特殊环境中时,标准命令可能因依赖冲突失败。此时需显式约束版本范围以确保GuzzleHTTP等底层组件兼容。
1、先卸载已存在的不兼容版本(如有):composer remove yansongda/pay。
2、安装适配低版本PHP的稳定分支:composer require yansongda/pay:3.6.9 --with-all-dependencies。
3、手动补装必要HTTP客户端:composer require guzzlehttp/guzzle:^6.5(PHP 7.2–7.4适用)或composer require guzzlehttp/guzzle:^7.5(PHP 8.0+适用)。
三、离线环境安装方式
在无外网访问权限的生产服务器或内网开发环境中,无法直接执行composer require。此时需预先下载包及其依赖,再通过本地路径安装。
1、在有网络的机器上创建临时项目:composer init -n && composer require yansongda/pay:~3.7.0 --no-install。
2、执行composer install --prefer-dist --no-dev,生成完整的vendor目录。
3、将整个vendor目录打包,上传至目标服务器对应项目根目录下,覆盖原有vendor文件夹。
4、在目标服务器执行:composer dump-autoload,重建自动加载映射。
四、多框架共存场景下的隔离安装方式
当ThinkPHP项目与Laravel、Hyperf等其他框架共享同一服务器或部署路径时,为避免容器类(如Pimple)或HTTP客户端版本冲突,需启用独立依赖管理。
1、在ThinkPHP项目根目录新建pay-composer.json文件,仅声明yansongda/pay相关依赖。
2、执行:composer install --working-dir=./pay-composer.json --no-plugins,强制限定作用域。
3、修改ThinkPHP自动加载逻辑,在app/common.php或base.php中追加:require_once __DIR__ . '/../vendor/yansongda/pay/src/autoload.php';。
五、验证安装是否成功的方式
安装完成后需立即验证类自动加载与基础命名空间是否可用,防止因PSR-4映射异常导致后续调用报错。
1、在任意控制器中添加测试代码:dd(class_exists('Yansongda\Pay\Pay'));。
2、若返回true,表示核心类已正确注册;若返回false,检查vendor/autoload.php是否被正常引入。
3、进一步验证配置加载能力:dd(YansongdaPayPay::alipay([]));,应抛出MissingConfigException而非ClassNotFound异常。



















