
想要在PHP项目中复用代码,或者分享功能模块给其他开发者,使用Composer创建自定义包是最标准的方式。下面介绍如何一步步创建一个属于你自己的Composer包。
1. 准备项目结构
新建一个目录作为你的包项目根目录,比如 my-awesome-package。进入该目录后,建议按照PSR-4规范组织代码。
基本目录结构如下:
/my-awesome-package
├── src/
│ └── MyAwesomeClass.php
├── tests/
│ └── MyAwesomeClassTest.php
├── composer.json
└── README.md
src/ 目录存放核心类文件。例如:
// src/MyAwesomeClass.php
<?php
namespace MyVendorAwesome;
class MyAwesomeClass
{
public function sayHello()
{
return “Hello from my custom package!”;
}
}
2. 创建composer.json配置文件
在项目根目录运行 composer init,按提示填写信息,或手动创建 composer.json 文件:
{
“name”: “myvendor/awesome-package”,
“description”: “A simple custom package for demo”,
“type”: “library”,
“license”: “MIT”,
“authors”: [
{
“name”: “Your Name”,
“email”: “you@example.com”
}
],
“require”: {
“php”: “^7.4 || ^8.0”
},
“autoload”: {
“psr-4”: {
“MyVendorAwesome”: “src/”
}
},
“minimum-stability”: “dev”,
“prefer-stable”: true
}
关键点说明:
name:格式为 vendor/package-name,全局唯一 autoload.psr-4:定义命名空间与目录映射 minimum-stability:开发阶段可设为 dev
3. 本地测试你的包
在其他项目中测试这个包,可以先使用路径仓库方式引入。
豆包爱学
豆包旗下AI学习应用
674 查看详情
在目标项目的 composer.json 中添加:
“repositories”: [
{
“type”: “path”,
“url”: “../my-awesome-package”
}
],
“require”: {
“myvendor/awesome-package”: “*”
}
然后运行 composer update,即可安装并自动加载你的类。
测试代码:
<?php
require_once __DIR__ . ‘/vendor/autoload.php’;
use MyVendorAwesomeMyAwesomeClass;
$obj = new MyAwesomeClass();
echo $obj->sayHello(); // 输出: Hello from my custom package!
4. 发布到Packagist
完成开发和测试后,将包发布到Packagist,让所有人都能通过composer install使用。
将代码推送到GitHub/GitLab等公共仓库 访问 https://www.php.cn/link/ec811d0d775adc62776ba80fadd4ed19 并登录 点击“Submit”,填入你的Git仓库地址 提交后,其他人就可以通过 composer require myvendor/awesome-package 安装
每次更新代码后,记得打Git标签(如 v1.0.0),方便用户按版本安装。
基本上就这些。只要遵循PSR规范、写好composer.json,并发布到Packagist,你的PHP包就能被任何人轻松集成使用。
以上就是composer如何创建一个自己的包_Composer创建自定义包方法的详细内容,更多请关注php中文网其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/536839.html
微信扫一扫
支付宝扫一扫