如何创建自己的一个composer包,这个其实很好解决的!只要你了解composer相关的知识便不难做到。

首先,你还不知道什么是composer的话,请先学习下composer的相关知识。简单的说,composer就是一个包的依赖安装管理,类似前端的npm!你可以根据composer来有选择的安装第三方代码进行开放工作。在安装的过程中,如果访问国外官网的网速慢,可以选择国内的镜像配置

其次来创建包:

1 新建文件夹hello,在文件夹下建一个src文件夹,在该src文件夹下,建立一个文件-EchoHello.php.



2 在文件中写入代码:

<?php
/**
* Created by PhpStorm.
* Filename: EchoHello.php
* User: cmder
* Date: 2018/3/25
* Time: 22:49
*/
namespace Hello; class EchoHello
{
public static function say()
{
echo 'hello';
}
}

3 开始使用composer

这个时候,要在项目的根目录里创建一个composer.json的文件(用来保存创建包的相关信息),我们可以手动创建,也可以在根目录里通过composer init命令来根据提示创建:



这样在根目录下就生成了composer.json文件:

{
"name": "cmder/hello",
"description": "echo hello",
"license": "MIT",
"authors": [
{
"name": "cmderQ",
"email": "XXXX3@qq.com"
}
],
"require": {}
}

4 我们可以编辑json文件,在其中添加我们需要使用的第三方插件(工具)。例如添加php的版本要求和自动加载(使用PSR-4),使用hello命名空间,加载src目录下的所有文件,如下

{
"name": "cmder/hello",
"description": "echo hello",
"license": "MIT",
"authors": [
{
"name": "cmderQ",
"email": "XXXX3@qq.com"
}
],
"require": {
"php": ">=5.4.0"
},
"autoload": {
"psr-4": {
"Hello\\": "src/"
}
}
}

添加完成后,利用composer install命令来执行安装操作:



如上图,显示安装成功!打开文件目录,显示如下:



5 测试

创建测试文件test.php,代码如下:

<?php
/**
* Created by PhpStorm.
* Filename: test.php
* User: cmder
* Date: 2018/3/25
* Time: 23:06
*/
require_once __DIR__ . '/vendor/autoload.php';
use Hello\EchoHello; echo EchoHello::say();

在dos下执行php test.php, 输出“hello”,说明一个包就创建成功了!



做到这一步之后,下面将讲解composer包跟Packagist之间的关联!即如何将composer包发布到Packagist.org上!

创建你的一个composer包的更多相关文章

  1. 动手开发自己的第一个 composer 包

    原文:http://blog.jayxhj.com/2016/05/basic-composer-package-development/ composer 是 PHP 的依赖管理工具,本篇文章就来说 ...

  2. composer包(发布到github上)同步到Packagist

    在上一篇文章里面,探讨了如何一步步建立composer包–创建你的一个composer包 创建完成后,我们需要做的就是讲自建的包发布到Packagist上.至于说什么是Packagist,这个就不用我 ...

  3. 创建你的第一个Composer/Packagist包

    今天我们要介绍一下如何通过Composer和Packagist向PHP社区贡献代码包.首先,如果你是一个PHP开发者但是还不知道什么是Composer,请先参考了一下这篇文章http://docs.p ...

  4. 开发一个属于自己的第一个Composer/Packagist包

    Composer 给我们带来了诸多的好处: 模块化,降低代码重用成本 统一的第三方代码组织方式 更科学的版本更新 初始化项目,生成composer.json文件 初始实例项目代码目录结构: 现在要在项 ...

  5. 从零创建发布属于自己的composer包

    原文地址:https://www.wjcms.net/archives/从零创建发布属于自己的composer包 今天给大家讲解一下如何从零创建发布属于自己的composer包. composer包用 ...

  6. 如何在本地开发Composer包

    如何在本地开发Compoer包 周煦辰 2019-05-26 记录一下如何在本地开发一个Composer包,以及如何发布到Packgist. 假设你要开发一个名叫xuchen/biubiubiu的包. ...

  7. 【Composer】实战操作二:自己创建composer包并提交

    大纲 创建自己的composer库 提交到指定平台 测试安装自己的库 设置composer平台自动更新 如何方便测试自己开发的库 开始动手 创建自己的composer库 个人博客后台有一部分是关于统计 ...

  8. 如何创建自己的composer包

    composer中文网 :https://www.phpcomposer.com/ 一.前期准备: composer 安装 Windows安装: 1.下载安装包,https://getcomposer ...

  9. 创建一个ROS包

    先前笔者不知道catkin到底是个什么东东,后来终于在官方网站上找到了答案,原来catkin是ROS的一个官方的编译构建系统,是原本的ROS的编译构建系统rosbuild的后继者.catkin的来源有 ...

随机推荐

  1. Elasticsearch Search API

    当执行一个搜索时,它将这个搜索请求广播给所有的索引分片.可以通过提供路由参数来控制要搜索哪些分片.例如,当检索tweets这个索引时,路由参数可以设置为用户名: curl -X POST " ...

  2. redis 系列21 复制Replication (上)

    一.   概述 使用和配置主从复制非常简单,每次当 slave 和 master 之间的连接断开时, slave 会自动重连到 master 上,并且无论这期间 master 发生了什么, slave ...

  3. gradle插件从3.2.0升级到3.2.1后报错Error: Cannot create directory 项目目录\thirdlib\build\intermediates\packaged_res\debug\drawable

    报错信息如下:  解决方案: 删除thirdlib\build目录,然后重新编译. 但是紧接着又会报类似的错误,只不过build目录变成其他module的了. 所以,先clear build,然后再重 ...

  4. ES 02 - 部署Elasticsearch单机服务 + 部署中的常见问题

    目录 1 准备工作 1.1 安装JDK 1.2 下载安装包 1.3 创建elastic用户 2 启动ES服务 2.1 修改配置文件 2.2 启动服务 3 验证ES服务是否可用 4 关闭与重启服务 4. ...

  5. 如何以管理员身份运行cmd

    点击屏幕最左下角的“开始”按钮,选择“运行”命令:   在弹出的“运行”对话框中输入“CMD”命令,再单击“确定”按钮:   正常打开了DOS命令提示符窗口了.但是是“user”权限下:   有时,“ ...

  6. pymysql.err.InternalError: (1205, 'Lock wait timeout exceeded; try restarting transaction')错误处理

    问题描述: 在使用pymysql库时,利用游标执行插入操作,产生错误,会出现pymysql.err.InternalError: (1205, 'Lock wait timeout exceeded; ...

  7. Spring系列之手写一个SpringMVC

    目录 Spring系列之IOC的原理及手动实现 Spring系列之DI的原理及手动实现 Spring系列之AOP的原理及手动实现 Spring系列之手写注解与配置文件的解析 引言 在前面的几个章节中我 ...

  8. Spring Boot2.0 设置拦截器

    所有功能完成 配置登录认证 配置拦截器 在spring boot2.0 之后 通过继承这个WebMvcConfigurer类 就可以完成拦截 新建包com.example.interceptor; 创 ...

  9. git第三节----git status与git diff

    @ git status主要检索本地仓库的文件更新状态 @ git diff 主要是查看文件更新的具体内容 首先我们需要了解下文件状态类型,分为以追踪文件和未追踪文件 已追踪文件:在仓库之前的版本快照 ...

  10. Java——重载和重写

    前言 在程序设计中经常会遇到对对方法的重载或者重写,下面将介绍重载和重写. 重载(Overloade) 重载出现的原因 任何程序设计语言都具备的一项重要特性就是对名字的运用.当创建一个对象时,就给对象 ...