资讯专栏INFORMATION COLUMN

【Composer】简单介绍

sunsmell / 1767人阅读

摘要:是什么是一个依赖管理工具,它允许你在项目中声明所有依赖的代码库,并且通过简单的命令安装它们。通常这些依赖库会安装在一个叫的目录。然后实际开发过程中,有些功能并不能在公开的库找到支持,需要自行开发。

Composer 是什么

Composer 是一个依赖管理工具,它允许你在项目中声明所有依赖的代码库,并且通过简单的命令安装它们。通常这些依赖库会安装在一个叫"vendor"的目录。

现在绝大部分PHP开源的项目都提供了Composer的支持,建议大家在项目中使 Composer来解决PHP代码包管理的问题,不要再使用下载源码、手工include的原始方法

Composer 有什么用

1.管理包依赖,管理版本

2.实现自动加载

3.支持事件处理

4.等等

Composer 如何使用

安装

windows

即然用windows,那么建议直接下载这个可执行文件Composer-Setup.exe来安装,它将为你下载最新的composer版本,并为你配置好环境变量。

linux等*nix系列

建议你全局安装它

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer 
cd /usr/local/bin
chmod a+x composer 

如果你没有权限,可以改用root账号或者sudo

在项目中使用 Composer

1.首先需要为项目创建一个 composer.json 文件

我们用命令行的方式 ,下面所有步骤都是在项目根目录操作

composer init

依次为出行如下提示

然后我们就生成了一个composer.json文件,内容如下

{
    "name": "test/test",
    "description": "this is a test",
    "type": "library",
    "authors": [
        {
            "name": "xiehuanjin",
            "email": "xiehuanjin@globalegrow.com"
        }
    ],
    "require": {}
}

这一步并不是必须的,也可以手动在项目根目录创建一个名叫composer.json的文件,文件内容为一对大括号{}

2.安装依赖的包,以predis为例

composer rquire --prefer-dist predis/predis

这个命令自动为你下载predis的稳定版本
--prefer-dist 尽可能从dist获取,下载稳定版本
--prefer-source 尽可能从source获取,下载最新代码

3.自动加载

使用 composer 你不需要到处使用require include各种依赖文件,你只需要在项目引导文件中require这个文件就好了

require "vendor/autoload.php";

4.其他

上面演示的是安装一个现成的库。然后实际开发过程中,有些功能并不能在公开的库找到支持,需要自行开发。那怎么引入自己的库呢。

我们假设自行自行开发的库符合psr4规范(这不是必须,但是建议)

回到composer.json文件,我们只需要在该文件填加autoload配置

{
    "name": "test/test",
    "description": "this is a test",
    "type": "library",
    "authors": [
        {
            "name": "xiehuanjin",
            "email": "xiehuanjin@globalegrow.com"
        }
    ],
    "require": {},
    "autoload": {
        "psr-4": {
            "testclient": "client/", 
            "testservice": "service/"
        }
    }
}

为这个库提供autoload支持

composer dump-autoload

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/28465.html

相关文章

  • Hyperledger Fabric周周记:Composer

    摘要:在上周周记的结尾,我曾经说过本周要介绍的开发和应用。可在通读完的文档之后,我立即取消了原定计划,直接介绍。让其成为开发首选的理由只有一个对开发者友好。将发布到的暴露成,供外部调用,完全语言中立。而后者则是为测试而生的。 在上周周记的结尾,我曾经说过本周要介绍Fabric的开发和应用。按照最开始的写作计划,我打算讲讲两种开发模式:直接使用Fabric API和利用Composer框架。可...

    quietin 评论0 收藏0
  • Composer管理PHP依赖关系

    摘要:然而各自为政的打包方式依赖关系的处理,导致了很难将两个开源项目集成到一起。虽然有这种官方支持的包管理工具,但是依然没有很好的统一的依赖关系管理的办法。项目编译和打包依赖关系的解决都可以很轻松的实现。 简介 现在软件规模越来越大,PHP项目的开发模式和许多年前已经有了很大变化。记得初学PHP那会儿,boblog是一个很好的例子,几乎可以代表PHP项目的开发模式。当时PHP 5.x以上的版...

    Mertens 评论0 收藏0
  • composer

    摘要:自动加载为了实现类的随取随用,类的命名空间定义建议遵从一定的规则。这种规则可以是某一项目组约定的。不过为了使得类库统一,项目指定了一种命名空间的规范,被一些流行项目采用。用来指定在软件包级别上区别。注意默认类库是使用规范自动加载的。 简介 composer是一个php中管理依赖的工具。它使你可以在项目中声明用到的包/库,之后它会自动安装相关包。 Composer is not a ...

    Miyang 评论0 收藏0
  • PHP包管理工具--Composer自动加载

    摘要:接触过的同学都知道使用作为项目的包管理工具但是并不是独有的是的包管理工具这两者的关系就像于于一样但是发现真正项目中使用还是比较少的所以这里这里写一遍文章介绍的使用帮助那些对于还是有点模糊的同学此文跟没有任何联系安装的方式就不讲了具体安装方式 接触过Laravel的同学都知道,Laravel使用Composer作为项目的包管理工具.但是Composer并不是Laravel独有的,Comp...

    xiaoqibTn 评论0 收藏0
  • Composer进阶使用 —— 常用命令和版本约束

    摘要:建议使用折音号操作符。对于使用作为版本号标准的项目来说,这种版本约束方式很实用。折音号操作符的行为跟有比较大的关联,它允许升级版本到安全的版本。 这篇文章主要介绍一些常用的包管理命令以及包的版本如何进行约束。 常用命令 require命令 在《Composer快速入门》中已经简单介绍过使用install命令安装依赖的方式。除了install命令,我们还可以使用require命令快速的安...

    keelii 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<