composer详解

php包管理非常方便,非常方便。

composer架构原理

这里写图片描述

composer的原理和其他的包管理工具都是一样的,只是实现的细节有些不同,例如yum,例如brew,例如apt-get还有packets。

composer管理的原理上图已经表达的非常的清楚了,通过上图我们应该知道如何正确的使用composer了吧

使用自己的composer库

1.首先我们要搞定本地,也就是图上本地的composer.json

可以使用命令或者自己创建

composer init #创建一个composer.json文件
composer install #第一次从远处仓库拉去php包的时候执行
composer update #修改本地的composer.json后执行
composer about #查看composer的信息
composer info
composer self-update#composer自己更新
composer --check#查看帮助
composer require  #包含一个php包进来
remove 移除一个包
本地的必要配置如下

{
    "repositories": [
        {
            "type": "vcs",
            "url": "git@github.com:baixiaoshi/composer_test.git"
        },
        {
            "packagist": false
        }
    ],
    "require": {
        "hello/hello": "dev-master"
    }
}
#这是一个最简短的配置,现在要拉去github上的一个名字叫做hello/hello的php包
repositories : 就是php远端仓库的地址啦,这里我用的类型是vcs也就是版本控制github上自己的测试包
packagist : 这里是禁用了官方的包仓库地址,
我们可以配置官方的地址来拉去php包
{
    "type": "composer",
    "url": "http://packagist.phpcomposer.com"
}
require选项包含远端php包,其中hello/hello是包的名字,所以待会我们自己创建一个包的名字也就是这个了,dev-master是版本的意思,我们经常看到这样的吧
{
    "monolog/monolog": "~0.1" #~号表示大于的意思
}

2.下面就来搞定远端了,客户端的配置明显是要拉去一个名字叫做hello/hello,版本是dev-master的包,那就直接来了

{
    "name": "hello/hello",#包的名字,客户端要找这个的啦
    "autoload": {
        "psr-4": {
            "Hello\\": ""#这里设置包拉下来自动加载包里面的那些文件,是通过命令空间来自动加载的哦
        }
    },
    "require": {
        "php": ">=5.4.0"#如果有对其他的一些包的依赖还是require在这里就好了
    }
}

<?php
namespace Hello;#这个命名空间就是上面autoload配置中的啦
class Hello {
    public function say_hello() {
        exit('hello world');    
    }
}

3.回到客户端执行composer install 当然就拉下来了这个包,当然只有一个测试文件而已.此时的你是不是轻松+愉快了呢

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值