原文地址:http://www.tuicool.com/articles/uAjyae如何创建一个自己的Composer库1.1 什么是Composer一句话:Composer是PHP的一个依赖管理工具,类似于java中的maven, node 中npm, iOS中的cocoapod。它会在你的项目中为你安装这些依赖的库文件代码,如果想了解Composer如何安装,以及入门使用,请参考这里http://docs.phpcomposer.com/00-intro.html, 本文重心是: 开发一个自己的Composer库。 1.2 准备工作网上分享如何自定义Composer库的文章不少,但不够详尽,尤其是对初学者来说,会有坑,因此毛遂自荐,在此做一下分享,在开始前你需要准备几个账号:
当然并不是必须用github账号,用你自己私有的git仓库也可以,你至少要告诉Composer你的代码放在哪里,它会主动去拉去代码,然后放如
1.3 开始创建本地库mkdir WebUtil cd WebUtil composer init
Package/name 上述字段希望你填写好这个项目的[包名/项目名称], 当然你可以任性点,来个[xxoo/test]都可以,这个会作为你发布的项目本地址包名,如果你真用这个名词,那么一旦这个发布出去,那么别人在使用你这个代码仓库时, 文件头或者代码行会引入这个包名: use xxoo\test; 当然本文创建的项目不叫这个名字,因为在日常开放中,我发现有些重复的代码可以提取为工具类,所以我创建了一个叫:[apptut/web-util]项目,你可能注意到了,此处我没有使用驼峰,而且名称里还多了一条横线,这是composer的自动处理的,咱忽略不计。 至于apptut是我在github账号名,因此我用这个做了包名,当然你可以坚持使用xxoo, 无妨。 1.3.1 工具库实现这个工具库很简单,我把日常用到的php对CURL常用的http请求做了一个封装,常用的请求:GET和POST请求,代码大致如下: class CURLUtil{
public static function get($url, $header = []){}
public static function post($url, $data, $header = []) {}
}
具体代码,请参见:https://github.com/apptut/WebUtil/blob/master/src/CURLUtil.php 实现好这个库后,我们最后需要来看一下composer.json这个文件,内容如下: {
// 省略相关内容
"require": {
"php": " |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|