安装Composer

参考:https://getcomposer.org/doc/01-basic-usage.md

  • composer 是PHP依赖管理工具

  • PHP最低版本要求5.3.2,需要允许openssl扩展,编译时加参数--with-openssl
    搬瓦工下编译参数(小于1G内存要禁用fileinfo,否则会编译失败)

      ./configure \
    --prefix=/usr/local/php \
    --with-mysql=mysqlnd \
    --with-mysqli=mysqlnd \
    --enable-short-tags \
    --disable-posix \
    --with-config-file-path=/usr/local/php/etc \
    --with-config-file-scan-dir=/usr/local/php/etc/conf.d \
    --enable-ftp \
    --with-curl=/usr \
    --with-zlib \
    --enable-xml \
    --with-gd \
    --with-jpeg-dir=/usr/lib \
    --with-png-dir=/usr/lib \
    --with-freetype-dir=/usr/lib \
    --enable-mbstring \
    --enable-sockets \
    --enable-exif \
    --enable-fpm \
    --with-openssl \
    --enable-zip \
    --with-mcrypt \
    --disable-fileinfo

    安装mcrypt扩展时需要系统先安装相关的库
    yum install libmcrypt libmcrypt-devel

  • 执行在线安装脚本

      curl -sS https://getcomposer.org/installer | php

    执行结果如下:

          >  #!/usr/bin/env php
    All settings correct for using Composer
    Downloading...
    >
    >Composer successfully installed to: /root/composer.phar
    >Use it: php composer.phar

    移动到path目录

      mv composer.phar /usr/local/bin/composer
    composer -V

    然后可以用composer来安装了

  • 安装依赖
    创建一个composer.json文件,写入相应的包名和版本号,如

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

    执行 composer install,就进入自动安装,安装完成后会生成一个composer.lock文件,里面是特定的版本号名,需要这个文件和composer.json一起提交到版本管理里去。

  • 更新依赖
    composer update
    如果只想更新部分依赖
    composer update monolog/monolog

  • Composer 在线仓库 Packagist

  • 自动加载
    require 'vendor/autoload.php';
    然后在php中这样使用:

          $log = new Monolog\Logger('name');
    $log->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Logger::WARNING)); $log->addWarning('Foo');

    你甚至可以把你自己的代码加入自动加载中,如

{
"autoload": {
"psr-4": {"Acme\\": "src/"}
}
}

这时src/Foo.php将注册为 Acme\Foo 类,加入上面的内容后,你必须运行composer dump-autoload重新生成autoload.php文件,require之后将返回一个loader实例。可以加入其他命名空间,在测试中很有用。

$loader = require 'vendor/autoload.php';
$loader->add('Acme\\Test\\', __DIR__);

Laravel

安装laravel

有两种方式

  1. 通过 Laravel 安装工具
    composer global require "laravel/installer=~1.1"
    安装后将~/.composer/vendor/bin加入PATH
    export PATH=$PATH:/root/.composer/vendor/bin
    laravel new 命令建立一份全新安装的 Laravel 应用,例如: laravel new blog

  2. 通过 Composer Create-Project

composer create-project laravel/laravel myproject --prefer-dist

另一种安装方法,以安装ratchet为例

composer require cboden/ratchet
#此时将会在当前目录自动生成一个composer.json文件
composer install
#开始安装... 更多可以查看中文官网~~http://docs.phpcomposer.com/

PHP的依赖管理工具----composer的更多相关文章

  1. 有用PHP依赖管理工具Composer新手教程

    PHP依赖管理工具Composer新手教程 Composer 是 PHP 的一个依赖管理工具.它同意你申明项目所依赖的代码库,它会在你的项目中为你安装他们. 依赖管理 Composer 不是一个包管理 ...

  2. PHP依赖管理工具Composer入门

    作者: JeremyWei | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明 网址: http://weizhifeng.net/manage-php-dependency-wi ...

  3. PHP的包依赖管理工具Composer简介

    composer是一个基于项目的依赖管理器,负责将php项目的所依赖的包和库安装在项目的目录中,默认不会不会安装任何数据到全局.他用于取代之前pear工具 1 安装Composer curl -sS  ...

  4. Composer : php依赖管理工具

    原始时代 我记得在当时用php的时候还没有composer,只有个pear,但是不好用呀,还不如直接在互联网上到处复制代码了,更快更不容易出错,当时也没有github这么好的社区工具了 总结如下 代码 ...

  5. composer php依赖管理工具

    #composer是什么 Composer 是 PHP 的一个依赖管理工具.它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们. composer出现之前我们php项目依赖管理大部分都是手动 ...

  6. windows下安装php依赖关系管理工具composer

    1.安装Composer Composer是PHP的依赖管理工具之一,官方网站 http://getcomposer.org/ .它支持多种安装方式,对于在win下做开发的草来说,最便捷的方式就是下载 ...

  7. Go 包依赖管理工具 —— govendor

    govendor 是一个基于 vendor 机制实现的 Go 包依赖管理命令行工具.与原生 vendor 无侵入性融合,也支持从其他依赖管理工具迁移,可以很方便的实现同一个包在不同项目中不同版本.以及 ...

  8. yarn依赖管理工具的使用

    Yarn是Facebook发布的一款依赖管理工具,它比npm更快.更高效. 与NPM命令对照 npm install => yarn install npm install --save [pa ...

  9. Golang依赖管理工具:glide从入门到精通使用

    这是一个创建于 2017-07-22 05:33:09 的文章,其中的信息可能已经有所发展或是发生改变. 介绍 不论是开发Java还是你正在学习的Golang,都会遇到依赖管理问题.Java有牛逼轰轰 ...

随机推荐

  1. URL相对路径和URL绝对路径

    经常在页面中引用图片,html页面等,自己常常弄错相对路径和绝对路径,今天写下此文总结一下.    直接举例说明吧. 在 D:\例子\html下有这么几个文件和文件夹     1.若引用的资源和本身在 ...

  2. springboot缓存及连接池配置

    参见https://coding.imooc.com/lesson/117.html#mid=6412 1.springboot的springweb自己默认以及配置好了缓存,只需要在主文件(XxxAp ...

  3. Redis与Reactor模式

    Redis与Reactor模式 Jan 9, 2016 近期看了Redis的设计与实现,这本书写的还不错,看完后对Redis的理解有非常大的帮助. 另外,作者整理了一份Redis源代码凝视,大家能够c ...

  4. MyISAM和InnoDB存储引擎的差别

    1.MyISAM不支持事务处理等高级处理,而InnoDB支持. 2.MyISAM强调的是性能,速度更快,而InnoDB提供事务支持以及外键等高级数据库功能. 3.MyISAM读性能比InnoDB强非常 ...

  5. 【SpringMVC学习04】Spring、MyBatis和SpringMVC的整合

    前两篇springmvc的文章中都没有和mybatis整合,都是使用静态数据来模拟的,但是springmvc开发不可能不整合mybatis,另外mybatis和spring的整合我之前学习mybati ...

  6. matlab 常用函数汇总

    1. 特殊变量与常数 主题词 意义 主题词 意义 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 inputname 输入参数名 Na ...

  7. Oracle SOA套件12c

    产品概览 随着基于云的应用越来越多的被企业所採用,以及移动技术与企业应用的集成的需求的增多,企业级应用集成的复杂度也前所未有的提升. Oracle SOA套件12c,业内最完整的统一应用集成解决方式的 ...

  8. could not find class that it depends on; nested exception is java.lang.NoClassDefFoundError: org/aspectj/weaver/reflect/ReflectionWorld$ReflectionWorldException

    © 版权声明:本文为博主原创文章,转载请注明出处 1.问题描述 搭建SSH框架启动报错如下: 六月 07, 2017 2:34:34 下午 org.springframework.web.contex ...

  9. Flask--上下文源码流程

  10. Sphinx之配置文件

    # # Sphinx configuration file sample # # WARNING! While this sample file mentions all available opti ...