composer的安装和使用

1.composer是什么?

Composer 不是一个包管理器。是的,它涉及 "packages" 和 "libraries",但它在每一个项目的基础上进行管理,在你项目的某个目录中(例如 vendor)进行安装。默认状况下它不会在全局安装任何东西。所以,这仅仅是一个依赖管理。是PHP依赖管理工具。
php最低版本5.3.2,开启了openssl扩展。php

2.下载安装composer

1.linux下安装composerhtml

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
或者将其下载到本地。linux

2.windows下安装composerlaravel

下载而且运行 [Composer-Setup.exe][1],它将安装最新版本的 Composer ,并设置好系统的环境变量,所以你能够在任何目录下直接使用 composer 命令。redis

3.composer的简单使用

1.修改composer地址到中国镜像json

//修改当前的项目
composer config repo.packagist composer https://packagist.phpcomposer.com
//或者直接修改composer.json文件
"repositories": {
  "packagist": {
     "type": "composer",
     "url":     "https://packagist.phpcomposer.com"
   }
}windows

2.composer.json文件的编写缓存

{
    "name": "laravel/laravel",  //项目名称
    "description": "The Laravel Framework.",  //项目描述
    "keywords": ["framework", "laravel"],  //关键字
    "license": "MIT",  //许可证
    "version": "1.0.0",  //版本
    "type": "library",  //安装类型
    "homepage": "http://******"   //项目主页
    "authors": [    //做者相关信息
        {
            "name": "***",
            "email": "644****24@qq.com"
        }
    ],
    /*
    *   依赖管理
    *   这表示任何从 1.0 开始的开发分支,它将会匹配 1.0.0、1.0.2 或者 1.0.20
    *   ~1.2 至关于 >=1.2,<2.0,而 ~1.2.3 至关于 >=1.2.3,<1.3
    *   找到的都是最新的版本
    */
    "require": {
        "monolog/monolog": "1.0.*",
        "phpoffice/phpexcel": "dev-master",
        "smarty/smarty": "~3.1",
        "colinmollenhour/credis": "1.8.*",
        "elasticsearch/elasticsearch": "5.3.*"
    }
    /*
    *   composer自动加载方式
    *   1.PSR-4   标准规范,php-fig
    *   2.Class-map  扫描指定的文件或者目录 
    */
    "autoload": {
        "classmap": [
            "database"
        ],
        "psr-4": {
            "core\\": "core/",
            "apps\\": "apps/"
        },
        "files": [
            "common/define.php", "common/function.php"
        ],
    },
    /*
    *   脚本
    *   只有在根包的 composer.json 中定义的脚本才会被执行
    */
    "scripts": {
        //在 create-project 命令期间,根包安装完成后触发。
        "post-root-package-install": [
            
        ],
        //在 create-project 命令执行后触发。
        "post-create-project-cmd": [
            
        ],
        //在 install 命令执行后触发。
        "post-install-cmd": [
            
        ],
        //在 update 命令执行前
        "pre-update-cmd": [ 
           
        ],
        //在 update 命令执行后
        "post-update-cmd": [
            "rm -rf /home/dev/runtime/blog" //删除博客的缓存信息
        ]
    },
}

点击此处查看更多composer.json信息app

4.composer 相关命令

composer list  列出全部可用的命令
composer init   初始化composer.json文件(就不劳咱们本身费力建立啦),会要求输入一些信息来描述咱们当前的项目,还会要求输入依赖包
composer install  读取composer.json内容,解析依赖关系,安装依赖包到vendor目录下
composer update   更新最新的依赖关系到compsoer.lock文件,解析最新的依赖关系而且写入composer.lock文件
composer search packagename 搜索包,packagename替换为你想查找的包名称
composer require packagename 添加对packagename的依赖,packagename可修改成你想要的包名称
composer show packagename
composer self-update 更新 composer.phar文件自身
composer dump-autoload --optimize 优化一下自动加载
composer command --help 以上全部命令均可以添加 --help选项查看帮助信息
相关文章
相关标签/搜索