zoukankan      html  css  js  c++  java
  • Composer安装和使用

    Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。Composer 不是一个包管理器。是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装。默认情况下它不会在全局安装任何东西。因此,这仅仅是一个依赖管理。

    对于使用者来说Composer非常的简单,通过简单的一条命令将需要的代码包下载到vendor目录下,然后开发者就可以引入包并使用了.

    其中的关键在于你项目定义的composer.json,可以定义项目需要依赖的包(可能有多个),而依赖的包可能又依赖其他的包(这就是组件的好处),这些都不用你烦心,Composer会自动下载你需要的一切,一切在于composer.json的定义.

    1、Composer的安装

    方法一:下载并且运行 Composer-Setup.exe,它将安装最新版本的 Composer ,并设置好系统的环境变量,因此你可以在任何目录下直接使用 composer 命令(这是将 Composer 安装在你机器上的最简单的方法,推荐使用。)

    一直点下一步就安装成功了,这里的路径是自动加上的,如果没有就手动加上(注:运行 Composer 需要 PHP 5.3.2+ 以上版本)

    完成以后,输入"composer -V",显示以下画面说明安装成功

    方法二:下载composer.phar放在php目录中直接使用(优点:单一快捷使用composer)

    如果您希望手动下载phar,则可以使用以下版本:

     我下载的是1.8.0版,在它所在目录直接运行就可以

    2、使用Composer下载thinkphp

    第一步:首先要把仓库镜像修改成国内的,不然下载很慢

    全局配置(推荐)

    所有项目都会使用该镜像地址:

    composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/

    取消配置:

    composer config -g --unset repos.packagist

    项目配置

    仅修改当前工程配置,仅当前工程可使用该镜像地址:

    composer config repo.packagist composer https://mirrors.aliyun.com/composer/

    取消配置:

    composer config --unset repos.packagist

    使用composer config -g -l查看配置,结果如下,它已经改了镜像地址

    第二步:下载think

    打开Packagist搜索think

    运行这行代码,它就会自动下载think,注:如果不写上ThinkPHP版本,它会下载最新版(tp6)

     

    下面指定下载tp5.1的最新版本(指定版本5.1.*,指定目录名称tp5.1)

    composer create-project topthink/think tp5.1 5.1.*

     

     3安装依赖包

    方法一:使用composer.phar安装

    要开始在你的项目中使用 Composer,你只需要一个 composer.json 文件。该文件包含了项目的依赖和其它的一些元数据。

    第一件事情(并且往往只需要做这一件事),你需要在 composer.json 文件中指定 require key 的值。你只需要简单的告诉 Composer 你的项目需要依赖哪些包。

    {
        "require": {
            "monolog/monolog": "^2.0"
        }
    }

    你可以看到, require 需要一个 包名称 (例如 monolog/monolog) 映射到 包版本 (例如 ^.2.0) 的对象。

    编写完composer.json(必须),加上composer.phar

     获取定义的依赖到你的本地项目,只需要调用 composer.phar 运行 install 命令。

    php composer.phar install

    接着前面的例子,这将会找到 monolog/monolog 的最新版本,并将它下载到 vendor 目录。 这是一个惯例把第三方的代码到一个指定的目录 vendor。如果是 monolog 将会创建 vendor/monolog/monolog 目录。

    如果你不想使用composer.phar,在项目加上composer.json(必须),在所在项目运行以下代码:

    composer install

     

    方法二:Packagist搜索monolog,直接在网站根目录运行composer require monolog/monolog(无需composer.json和composer.phar,会自动创建json文件

    包版本

    在前面的例子中,我们引入的 monolog 版本指定为 ^2.0。这表示任何从 2.0 开始的开发分支,它将会匹配2.0.0或者2.0.1

    版本约束可以用几个不同的方法来指定。

     

    总结

    1、composer.json
    composer.json文件中保存的是我们安装的组件及组件的版本要求。

    2、comopser.lock
    composer.lock文件中保存的是组件及其依赖的具体版本,在多人协同开发的情况下,这个文件能很好的解决组件不同而产生的问题。在使用composer install的时候是不会修改composer.lock这个文件,所以会把这个文件也放入版本管理中,其它人在使用时只需要composer install就可以了。而使用composer update后修改这个文件。

    综上所述:
    composer.lock这个文件主要是解决在协同开发中组件及其依赖的版本记录,防止不同人使用的组件及依赖版本不同。

  • 相关阅读:
    Linux常用命令-centos
    USACO 2006 Open, Problem. The Country Fair 动态规划
    USACO 2007 March Contest, Silver Problem 1. Cow Traffic
    USACO 2007 December Contest, Silver Problem 2. Building Roads Kruskal最小生成树算法
    USACO 2015 February Contest, Silver Problem 3. Superbull Prim最小生成树算法
    LG-P2804 神秘数字/LG-P1196 火柴排队 归并排序, 逆序对
    数据结构 并查集
    浴谷国庆集训 对拍
    1999 NOIP 回文数
    2010 NOIP 普及组 第3题 导弹拦截
  • 原文地址:https://www.cnblogs.com/bushui/p/11863346.html
Copyright © 2011-2022 走看看