zoukankan      html  css  js  c++  java
  • Composer使用

    一、composer是什么

    如果你知道yumapt-getnpmbower等命令中的一种或者多种,那么,你也能很快知道composer是什么了。没错,它就是PHP里快速安装类库的。平时,我们安装一个PHP类库,需要搜索->下载;使用composer,我们只要知道包名,直接composer insatll就可以了。

    PHP 语言本身就带有强大的网络功能、文件管理功能和丰富的系统 API,Composer 也只是一段 PHP 脚本而已。

    引自Composer中文网的描述:

    二、作用

    安装PHP包、依赖库。

    示例:

    $ composer require monolog/monolog

    这是在安装monolog库。

    $ composer create-project laravel/laravel learnlaravel5 5.0.22

    这是在安装laravel框架并创建项目。

    YII框架也是通过composer安装的。

    三、为什么用composer

    通过过composer,我们可以使用大量的第三方库,而无需自己造轮子。优秀项目示例:

    • overtrue/wechat 让微信开发更简单!
    • catfan/medoo 一款ORM框架
    • monolog/monolog 日志记录
    • hprose/hprose RPC框架

    你可以在 https://packagist.org/ 找到你需要的库。甚至你可以提交自己写的优秀的库到该平台里供大家使用。

    如果不会composer,流行的laravelyii框架安装都成为问题,更不用谈学习了;很多优秀的轮子你无法使用。所以,推荐phper必须学会composer。

    四、win10下安装composer

    1、使用安装程序 

        这是将 Composer 安装在你机器上的最简单的方法。

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

    2、PHP命令安装

     1. cmd进入命令提示符,进入安装目录下 

         我的安装目录在(D:composer),如图

         

    2. 下载composer.phar

        输入命令: php -r "readfile('https://getcomposer.org/installer');" | php 

       

        注意:

        1)如果出现如下错误,你需要为 PHP 设置环境变量(环境变量目录指向php.exe目录),让全局都能访问

        

        2)如果收到 readfile 错误提示,请使用 http 链接或者在 php.ini 中开启 php_openssl.dll 

    3. 在 composer.phar 同级目录下新建文件 composer.bat

         输入命令: echo @php "%~dp0composer.phar" %*>composer.bat

        

    4. 关闭当前的命令行窗口,打开新的命令行窗口进行测试

        输入命令:composer -V

        

        注意:    

            如果composer 没有配置环境变量,就只能在安装目录下运行,不然会报如下错误;

            若是已配置环境变量,并在新的命令行窗口使下该命令仍报如下错误,那么请重启一下计算机;

            

    安装成功后在命令行窗口运行composer,会显示下面内容,说明安装成功

    五、使用composer安装扩展包

    以下以monolog为例:

    1、声明依赖

    项目目录下创建一个composer.json文件,指明依赖,比如,你的项目依赖 monolog:

    {
        "require": {
            "monolog/monolog": "1.2.*"
        }
    }

    如果不需要使用https,可以这么写,以解决有时候因为https造成的问题:

    {
        "require": {
            "monolog/monolog": "1.2.*"
        },
        "config": {
            "secure-http": false
        }
    }

    2、安装依赖

    安装依赖非常简单,只需在项目目录下运行:composer install

    更新全部的包(谨慎使用):composer update

    注意:使用composer install或者composer update命令将会更新所有的扩展包,项目中使用需谨慎!!!

    (1)若只安装指定的包推荐在命令行使用

    composer require monolog/monolog

    进行安装。

    如果需要指定版本:

    composer require "monolog/monolog:1.2.*"

    (2)更新某个包:

    composer update monolog/monolog

    (3)移除某个包:

    composer remove monolog/monolog

    如果手动更新了composer.json需要更新autoload:

    composer dump-autoload

    六、自动加载

    Composer提供了自动加载的特性,只需在你的代码的初始化部分中加入下面一行:

    require 'vendor/autoload.php';

    详细示例

    {
        "require": {
            "php": ">=5.4.0",
            "illuminate/database": "*",
            "monolog/monolog": "1.2.*"
        },
        "config": {
            "secure-http": false
        },
        "autoload": {
            "classmap": [
              "app/models"
            ],
            "files": [
                "vendor/yjc/src/Alipay/autoload.php"
                ],
            "psr-4": {
                "Yjc\Sms\": "vendor/yjc/src/Sms"
            }
        }
    }

    autoload部分指定自动加载的文件夹,每次里面的文件有新增,使用composer dump-autoload即可。

    七、命令汇总

    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选项查看帮助信息

     八、常见镜像地址:

    https://packagist.org 国外的,默认
    http://packagist.phpcomposer.com 中国全量镜像,推荐使用。网址:https://pkg.phpcomposer.com/

    1、镜像用法

    有两种方式启用本镜像服务:

    • 系统全局配置: 即将配置信息添加到 Composer 的全局配置文件 config.json 中。见“方法一”
    • 单个项目配置: 将配置信息添加到某个项目的 composer.json 文件中。见“方法二”

     方法一: 修改 composer 的全局配置文件(推荐方式)

    打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:

    composer config -g repo.packagist composer https://packagist.phpcomposer.com

    方法二: 修改当前项目的 composer.json 配置文件:

    打开命令行窗口(windows用户)或控制台(Linux、Mac 用户),进入你的项目的根目录(也就是 composer.json 文件所在目录),执行如下命令:

    composer config repo.packagist composer https://packagist.phpcomposer.com

    2、解除镜象:

    如果需要解除镜像并恢复到 packagist 官方源,请执行以下命令:

    composer config -g --unset repos.packagist

    执行之后,composer 会利用默认值(也就是官方源)重置源地址。

    ps:我的composer是默认安装在c盘,路径为:C:ProgramDataComposerSetupin

     
  • 相关阅读:
    chown更改文件和目录的所有者
    常量指针和指向常量的指针
    声明,有人破解我的mmsplayer,声称开源的mms
    声明,有人破解我的mmsplayer,声称开源的mms
    慎用mysql的utf8unicode
    慎用mysql的utf8unicode
    在 Ubuntu 下使用 Android NDK r4b 编译 FFmpeg 0.6.3
    skia 生成 vs2008工程
    mmsPlayer 2.0 将开源java部分
    skia 生成 vs2008工程
  • 原文地址:https://www.cnblogs.com/ivy-zheng/p/11040923.html
Copyright © 2011-2022 走看看