美文网首页
composer的一些command

composer的一些command

作者: 芒鞋儿 | 来源:发表于2020-09-07 01:26 被阅读0次

    01
    composer是包管理工具,其设定file主要在composer.json中定义。

    composer require <package_name> // 例如:swiftmailer/swiftmailer
    

    此命令执行之后,composer.json 会自动加入以下设定,例如:

    "require": {
        "swiftmailer/swiftmailer": "^5.4"  
    }
    

    也可以先在以上file中加入package的设定,然后运行 composer install 进行安装,但如果已有安装的package,通常composer.lock会发出警告,可以先删除lock文件再重新进行安装,也可以执行 composer update --lock ,参看03

    如果执行时候加上 --dev Option

    composer require filp/whoops  --dev  //例如 filp/whoops 一个errhandler的package
    

    表示安装dev环境下的包,在json文件中自动加上:

    "require": {
        "filp/whoops": "^2.1"  
    }
    

    关于version 的表示详解如下:
    ^ Caret Rage:
    ^1.2.3 表示>=1.2.3 <2.0.0 , 对于1.0以下版本:^0.3 表示 >=0.3.0 < 0.4

    ~ Tilde Rage:
    范围控制更精确
    ~1.2.3 表示 >=1.2.3 <1.3.0

    • Wildcard Rage:
      1.2.* 表示 >=1.2 < 1.3

    || 表示多种兼容
    eg. ^5.7 || ^7.0
    这种方式来表示多个不连续的版本号空间

    02
    autoload
    classmap, namespace, file 等可以在json 中设定如下,再通过autoload 文件自动导入,省略require 文件的书写

    "autoload": {
      "classmap": ["classes/", "libs/"],
      "files": ["config/database.php"],
      "psr-4": {
          "" : "src/"  //这表示所有的namespace 都到src下寻找
          "App\\Book\\": "src/book/"  
          //具体表示app/book的namespace路径,有了上面general 的设定,此处可省略。
      }
    }
    

    autoload 根据composer.json的设定产生autoload.php

    composer dumpautoload
    

    但每次package 更新的时候都需要重新执行以上命令,因此可以修改为

    composer dumpload -o    //optimized 
    

    或者在composer.json 中加入:

     "config": {
        "optimize-autoloader": true
     }
    

    03
    其他命令:
    移除package

    composer remove <package_name>
    

    如果事先在composer.json 中写好要安装的package名和其版本号,可以用composer install 集中安装。

    composer install
    

    通常安装之后会自动加入composer.lock 以锁定版本,如果需要更新的话,可以用以下命令:

    composer update --lock
    

    还有

    composer update <package_name> // 对package 进行upd
    composer update  //对所有package upd
    composer self-update // composer 自己upd
    

    相关文章

      网友评论

          本文标题:composer的一些command

          本文链接:https://www.haomeiwen.com/subject/znahektx.html