PHP的依赖管理工具----composer
安装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/monologComposer 在线仓库 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
有两种方式
通过 Laravel 安装工具
composer global require "laravel/installer=~1.1"
安装后将~/.composer/vendor/bin加入PATHexport PATH=$PATH:/root/.composer/vendor/bin
laravel new 命令建立一份全新安装的 Laravel 应用,例如:laravel new blog通过 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的更多相关文章
- 有用PHP依赖管理工具Composer新手教程
PHP依赖管理工具Composer新手教程 Composer 是 PHP 的一个依赖管理工具.它同意你申明项目所依赖的代码库,它会在你的项目中为你安装他们. 依赖管理 Composer 不是一个包管理 ...
- PHP依赖管理工具Composer入门
作者: JeremyWei | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明 网址: http://weizhifeng.net/manage-php-dependency-wi ...
- PHP的包依赖管理工具Composer简介
composer是一个基于项目的依赖管理器,负责将php项目的所依赖的包和库安装在项目的目录中,默认不会不会安装任何数据到全局.他用于取代之前pear工具 1 安装Composer curl -sS ...
- Composer : php依赖管理工具
原始时代 我记得在当时用php的时候还没有composer,只有个pear,但是不好用呀,还不如直接在互联网上到处复制代码了,更快更不容易出错,当时也没有github这么好的社区工具了 总结如下 代码 ...
- composer php依赖管理工具
#composer是什么 Composer 是 PHP 的一个依赖管理工具.它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们. composer出现之前我们php项目依赖管理大部分都是手动 ...
- windows下安装php依赖关系管理工具composer
1.安装Composer Composer是PHP的依赖管理工具之一,官方网站 http://getcomposer.org/ .它支持多种安装方式,对于在win下做开发的草来说,最便捷的方式就是下载 ...
- Go 包依赖管理工具 —— govendor
govendor 是一个基于 vendor 机制实现的 Go 包依赖管理命令行工具.与原生 vendor 无侵入性融合,也支持从其他依赖管理工具迁移,可以很方便的实现同一个包在不同项目中不同版本.以及 ...
- yarn依赖管理工具的使用
Yarn是Facebook发布的一款依赖管理工具,它比npm更快.更高效. 与NPM命令对照 npm install => yarn install npm install --save [pa ...
- Golang依赖管理工具:glide从入门到精通使用
这是一个创建于 2017-07-22 05:33:09 的文章,其中的信息可能已经有所发展或是发生改变. 介绍 不论是开发Java还是你正在学习的Golang,都会遇到依赖管理问题.Java有牛逼轰轰 ...
随机推荐
- 不厚道一回->Omnifocus 2 for mac license
rt, 发个Omnifocus 2 for mac license. 其实Omnifocus 2的价格已经还算亲民了..可惜手贱一下子就找到了,所以没买了..不敢独享,所以分享给需要的人..有能力还是 ...
- JQuery DataTables学习
1.Datatables简单介绍 DataTables是一个jQuery的表格插件.这是一个高度灵活的工具,根据的基础逐步增强,这将添加先进的互动控制.支持不论什么HTML表格. 主要特点: 自己主动 ...
- Repeater绑定List泛型对象
后台: public void BindData() { List<WeiBo> DataList = new List<WeiBo>(); ...
- java调用本地默认浏览器
1 http://blog.csdn.net/casularm/article/details/3401018 2
- RAD Studio XE8 技术研讨会讲义与范例程序下载
感谢各位程序猿亲临现场參加我们的公布会,现奉上会议当天的讲义与范例程序供大家參考: 2015/5/25~27北京.深圳 『RAD Studio XE8技术研讨会』 下载讲义:http://pan ...
- Linux下画原理图和PCB
Linux下画原理图和PCB Windows下大名鼎鼎的Allegro和经典的Protel 99SE都是不支持Linux操作系统的.做Linux驱动开发免不了要看一下原理图和PCB. 一般的做法有三种 ...
- RAII手法封装相互排斥锁
CriticalSectionWrapper是一个接口类 class CriticalSectionWrapper { public: // Factory method, constructor d ...
- SVN服务端的安装搭建(Linux)
在CentOS下安装 SVN 大多数 GNU/Linux 发行版系统自带了Subversion ,所以它很有可能已经安装在你的系统上了.可以使用下面命令检查是否安装了. svn --version 如 ...
- poj 3537 Crosses and Crosses 博弈论之grundy值
题意: 给1*n的格子,轮流在上面叉叉,最先画得3个连续叉叉的赢.问先手必胜还是必败. 分析: 求状态的grundy值(也就是sg值),详细怎么求详见代码.为什么这么求要自己想的,仅仅可意会(别人都说 ...
- Android开发系列之系统源码目录
相信大家对于Google给出的那副经典Android架构图非常的熟悉,从下往上依次是Linux内核层(主要是负责硬件管理调度),HAL层(主要是硬件抽象层),libs层+Runtime,Framewo ...