PHP中替换某个包或某个类

在使用composer组件时,有时候需要对包进行一些自定义修改,有一些教程中写需要修改composer.json,然后发布到Packagist,但如果只是适应自己需求所作的小修改,其实并没有必要发布到Packagist,而这样做也是Packagist不推荐的:

Do not submit forks of existing packages. If you need to test changes to a package that you forked to patch, use VCS Repositories instead. If however it is a real long-term fork you intend on maintaining feel free to submit it.

如果只是适应自己的小修改,fork项目回来后,直接对需要修改的位置进行修改并提交,然后在composer.json加上repositories,并指定fork回来的仓库的地址。

复制代码
"repositories": [
    {
        "type": "vcs",
        "url": "https://github.com/xxx/database"
    },
]

安装后看到composer输出(这里用hyperf/database做例子)

复制代码
Installing dependencies from lock file (including require-dev)
Package operations: 0 installs, 1 update, 0 removals
  - Removing hyperf/database (v2.2.41)
  - Installing hyperf/database (v2.2.41): Cloning xxxxxxxxx

Reference

如何利用 composer 替换第三方包里的某个类(color-thief-php为例) - 灰信网(软件开发博客聚合)

在Composer中使用自己修改的包 - DevsDawn

相关推荐
neo3301几秒前
debian13 编译源码qt5.15.18
开发语言·qt
Xiu Yan3 分钟前
Java 转 C++ 系列:STL常用函数
java·开发语言·c++·stl·visual studio
**蓝桉**5 分钟前
负载均衡概述
开发语言·阿里云·云计算·负载均衡
Andya_net6 分钟前
网络安全 | 学习NAT44、NAT46、NAT64 与 NAT66原理
学习·web安全·php
:1218 分钟前
java面试基础
java·开发语言
代码羊羊9 分钟前
Rust泛型编程:从零成本抽象到极致性能
开发语言·windows·rust
小樱花的樱花9 分钟前
Linux Shell命令入门
linux·服务器·开发语言
沫璃染墨10 分钟前
C++ std::list 深度解析:迭代器、splice 核心接口与排序效率全解
开发语言·c++
没有天赋那就反复12 分钟前
C++里面引用参数和实参的区别
开发语言·c++·算法
MinterFusion12 分钟前
如何使用Qt5在窗口中显示矩形(v0.1.3)(下)
开发语言·qt·编程·明德融创·窗口中绘制矩形