安装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. swift -NavigationController,代理传值

    // // ViewController.swift // NavigationController // import UIKit import Foundation class ViewContr ...

  2. ubuntu下设置静态ip

    直接修改系统配置文件ubuntu的网络配置文件是:/etc/network/interfacesubuntu命令行修改网络配置方法前面auto  eth?,让网卡开机自动挂载. 为网卡配置静态IP地址 ...

  3. ios程序,顶部和底部产生空白——程序不能全屏运行

    在开发过程中,遇到过这样的问题,整个程序不能以全屏状态运行,顶部和底部出现空白,如下图所示: 这样的原因是:设置的启动页不合适,设置大小合适的启动页就好了

  4. Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) JAVA日志的前世今生 .NET MVC采用SignalR更新在线用户数 C#多线程编程系列(五)- 使用任务并行库 C#多线程编程系列(三)- 线程同步 C#多线程编程系列(二)- 线程基础 C#多线程编程系列(一)- 简介

    Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) 一.前言 由于本篇文章较长,所以下面给出内容目录方便跳转阅读,当然也可以用博客页面最右侧的文章目录导航栏进行跳转查阅. 一.前言 ...

  5. 堆排序算法的java实现

         堆积排序(Heapsort)是指利用堆积树(堆)这种数据结构所设计的一种排序算法,可以利用数组的特点快速定位指定索引的元素.堆排序是不稳定的排序方法,辅助空间为O(1), 最坏时间复杂度为O ...

  6. [译]GLUT教程 - 整合代码5

    Lighthouse3d.com >> GLUT Tutorial >> Extras >> The Code So Far V 该代码与位图字体的代码类似.区别是 ...

  7. Linux_经常使用命令

    1. ls显示文件夹文件夹及文件使用方式: ls -lt -a 显示文件夹下全部文件及文件夹包括 . 与 .. -A 显示文件夹下全部文件及文件夹不包括 . 与 .. -l 显示文件夹下全部文件及文件 ...

  8. LCD屏背光驱动调试心得---血的教训

    开发板:明远智睿MY-IMX6-EK140 内核源码:linux-3.14.52 背光驱动IC:MP3202 调光原理:通过开发板的核心板PWM4引脚控制MP3202的EN脚,输出不同的占空比从而达到 ...

  9. k8s集群部署

    环境: 两台虚拟机, 10.10.20.203 部署docker.etcd.flannel.kube-apiserver.kube-controller-manager.kube-scheduler ...

  10. args *args **kwargs区别

    python 函数中的参数类型有两种,分别为 位置参数和关键字参数: 一 .位置参数(该类参数位置固定不变) args:     表示默认位置参数,该参数是具象的,有多少个参数就传递多少参数,且参数位 ...