安装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. Laravel的本地化

    一.简介 Laravel 的本地化功能提供方便的方法来获取多语言的字符串.语言包存放在 resources/lang 文件夹的文件里.在此文件夹内应该有网站对应支持的语言并将其对应到每一个子目录: / ...

  2. ionic准备之angular基础——$watch,$apply,$timeout方法(5)

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. android中依据不同分辨率dp和px的相互转算

    public class PxAndDp { /** * 依据手机的分辨率从 dp 的单位 转成为 px(像素) */ public static int dip2px(Context context ...

  4. Ffmpeg音频转码 卡顿(MP2转AAC)

    最好经手一个小的功能将mp2实时流转成AAC并发布成rtmp音频流,本身不是很难的一个需求, 一个晚上就能将功能开发好.功能开发完毕后,找来一音频文件利用Ffmpeg命令将音视频文件推成 实时udp格 ...

  5. 匿名函数 invoke

    delegate string MyDele(string str); string MyFun(string str) { return str; } private void Form1_Load ...

  6. [译]GLUT教程 - 位图和正交投影视图

    Lighthouse3d.com >> GLUT Tutorial >> Fonts >> Bitmap Fonts and Orthogonal Projecti ...

  7. start with git

    Start with git 1.what is GitHub? GitHub is a code hosting platform for version control and collabora ...

  8. 通过pyenv进行多版本python管理

    1.安装pyenv brew install pyenv 2.配置.zshrc文件 export PYENV_ROOT=/usr/local/var/pyenv if which pyenv > ...

  9. python 3 关于requests库的 text / content /json

    最近在爬SDFDA的数据,刚开始用urllib.request 库,一直连不到数据 : 后来通过CHROME浏览器的F12,发现该 网站用的是JSON格式{}'Content-Type': 'appl ...

  10. hdu3068 最长回文(manacher 算法)

    题意: 给定字符串.求字符串中的最长回文序列 解题思路: manacher 算法 时间复杂度:O(N) 代码: #include <cstdio> #include <cstring ...