龙空技术网

「PHP编程」如何制作自己的Composer包?

猿话 599

前言:

当前朋友们对“php建包”可能比较讲究,各位老铁们都想要知道一些“php建包”的相关知识。那么小编同时在网络上搜集了一些关于“php建包””的相关文章,希望各位老铁们能喜欢,看官们快快来了解一下吧!

PHP开发免不了要使用Composer,使用Composer有着明显的好处。一是可以很好的解决第三方包的相互依赖,二是可以方便进行代码的重用。

那如何制作自己的Composer包呢?

制作Composer包有几个步骤:

1、以git为例,先创建一个仓库,GitHub、Gitlab、码云都可以。甚至,使用svn也是可以的。

2、将仓库clone到本地,如下:

git clone 仓库地址

3、进入本地目录,然后执行初始化命令,如下:

在此过程中,命令行会提示你输入一些配置信息,以自动生成如下composer.json文件:

以上步骤操作完毕后,下面你需要在composer.json文件的同级目录,创建src目录。此目录将用来保存你的逻辑代码。

src目录创建完后,你需要在刚才的composer.json文件中加入一段:

这一段代码将确保使用Composer安装你的Composer包时,你的代码可以被自动加载到项目中。

因为按照psr-4自动加载的规则要求,命名空间的地址要与实际目录保持一致,因此,这里administrator\\test\\对应的就是你的实际目录层级和名称,也即是administrator\\test\\对应的是administrator/test/src目录。

4、待src目录中的主体逻辑编写完毕后,你可以提交这些代码到你的仓库。然后,在composer镜像网站提交你的仓库地址。

提交成功之后,在你的包列表中会出现如下的composer包信息。

至此,一个自定义的包就制作好了。

需要说明的是,这里我使用的composer官方镜像网站,但实际上,我们也可以不使用composer官方镜像网站。比如,直接使用git仓库,作为包的代码来源。

以上repositories就是用来指定代码来源,当type为composer就表示使用composer镜像网站(可以是官方的,也可以是非官方的),当type为vcs就表示直接使用代码仓库(可以是git仓库,也可以是svn仓库),具体的大家可以在这里查看:composer.json 架构 | Composer 中文文档 | Composer 中文网

使用vcs,虽然没有问题,而且也很安全,但是每引入一个自制包,你都要在repositories中增加一个地址项,这样太麻烦了。

那有没有一个方法可以让自制的composer包,能像官方仓库里的composer包一样使用呢?答,有的。在下一期的文章中,我将介绍如果搭建自己的composer包仓库。

标签: #php建包