官方文档地址:https://www.workerman.net/doc/webman/db/thinkorm.html
安装 webman/think-orm 插件时,为什么还需要指定 psr/container 包的版本?
composer -W require psr/container ^1.1.1 webman/think-orm
在还没有执行上述命令之前,搜了全局,发现就 workerman/webman-framework 包依赖 psr/container,而且申明的是 "psr/container": ">=1.0",实际 composer.lock 安装后的锁定版本是 2.0.1;而 think-orm 包根本就没有依赖 psr/container 包;
如果需要指定 psr/container ^1.1.1 版本,那么直接在 workerman/webman-framework 包里面声明不是更好吗
因为 think-orm 使用了 psr/container ^1.1.1
如果项目里是安装的 2.x 就先降级
可是从 https://packagist.org/packages/topthink/think-orm#v2.0.58 上看 topthink/think-orm 2.x 申明的依赖上没有 psr/container
没用依赖就不用了呗,只是文档没更新而已
早期think某个库依赖psr/container v1,具体哪个不记得了,可能是topthink/think-cache 依赖 topthink/think-container 依赖 psr/container v1。所以think相关的组件安装都加了
psr/container ^1.1.1
。如果你不需要可以去掉。嗯 就看文档的时候有点疑惑 现在了然了