一 什么是composer

  composer是一种php的包管理工具, 类似于Java的maven, Ubuntu的apt等, 可以方便的解决php的包管理, 管理依赖关系等问题.

二 使用composer的好处

  •  更方便地安装第三方类库, 在没有composer的时候, 可能需要 搜索->下载->引用->解决依赖关系等操作. 利用composer. 直接 composer install就可以了.
  • 可以利用丰富的第三方类库, 提高开发质量和开发效率, 专注于业务逻辑. (可以在 https://packagist.org/ 找到你需要的库, 可以提交自己写的优秀的库到该平台里供大家使用)
  • 如果不会composer, 流行的yii laravel等框架都无法安装更别说是使用或者学习了

三 composer的安装

  我是Ubuntu环境, 其他系统请参考自行探索.

  局部安装(只针对当前项目,用命令 php composer.pchar <command> 进行使用)

php -r "readfile('https://getcomposer.org/installer');" > composer-setup.php
php composer-setup.php

  执行完毕后, 在当前目录会生成一个 composer.pchar 文件.

  Use it: php composer.pchar <command>

  

  全局安装

mv composer.pchar /usr/local/bin/composer

四 使用composer

  生成一个空项目, 在项目根目录创建 composer.json

#composer.json
{
"require":{}
}
#全局安装
composer update
#局部安装
php composer.pchar update

  安装依赖

#composer.json
{
"require": {
"monolog/monolog": "1.2.*"
}
}
#安装/更新全部的扩展包(项目中谨慎使用)
composer install

composer update #安装/更新指定的扩展包
composer require monolog/monolog
composer require "monolog/monolog:1.2.*" #指定版本
composer update monolog/monolog #移除
composer remove monolog/monolog #手动更新.composer.json后需要更新autoload
composer dump-autoload

  自动加载

  php代码中加入

require 'vendor/autoload.php';

 

五 镜像加速

  由于composer仓库在国外, 国内访问比较慢, 可以采用国内的镜像加速

#全局安装
composer config -g repo.packagist composer https://packagist.phpcomposer.com #局部安装, 在composer中加入:
"repositories": [ { "packagist": false }, { "type": "composer", "url": "http://packagist.cn" } ];

  

Composer的入门与使用的更多相关文章

  1. composer快速入门

    composer.json 文件内容定义 ====================================================={ "require":{ &q ...

  2. php手撸轻量级开发(三)composer小白入门

    composer介绍 composer是php的一个依赖管理工具,在项目中声明所依赖的外部工具库,会自动安装这些工具库及所依赖的库文件. 对我等初阶工程狮来说,就是拉别人的代码,用别人的库,一个进阶版 ...

  3. PHP 之 Composer 新手入门指南

    自2012年3月1日发布以来,Composer因提供了PHP迫切需要的东西:依赖项管理而广受欢迎.实际上,Composer是将所有第三方软件(例如CSS框架,jQuery插件等)引入你的项目的一种方法 ...

  4. Composer入门

    摘要 本文介绍Composer的入门知识,包括require和autoload部分. Java有Maven, Node.js有npm, ROR有gem, 这些语言的程序员在开心地使用包管理工具加速开发 ...

  5. Composer基础

    摘要 本文介绍Composer的入门知识,包括require和autoload部分. Java有Maven, Node.js有npm, ROR有gem, 这些语言的程序员在开心地使用包管理工具加速开发 ...

  6. Flink101-快速示例

    验证本文需要具备Docker及Docker-composer,作者使用的环境为Mac + Docker Docker启动Flink集群 首先下载Flink的镜像docker pull flink,我下 ...

  7. 07-语言入门-07-A Famous Music Composer

    题目地址: http://blog.csdn.net/sevenmit/article/details/8231994  描述 Mr. B is a famous music composer. On ...

  8. windows composer 安装,使用新手入门

    一.前期准备: 1.下载安装包,https://getcomposer.org/download/ 2.在php.ini文档中打开extension=php_openssl.dll 3.下载php_s ...

  9. composer windows安装,使用新手入门

    一.前期准备: 1.下载安装包,https://getcomposer.org/download/ 2.在php.ini文档中打开extension=php_openssl.dll 3.下载php_s ...

随机推荐

  1. c# Process cmd 执行完回调 Proc_OutputDataReceived mysql mysqldump mysql source备份还原数据

    c# Process 执行完回调 Proc_OutputDataReceived mysql mysqldump mysql source备份还原数据 直接贴代码 前提:mysql5.7 vs2017 ...

  2. NullPointerException空指针异常——没有事先加载布局文件到acitivy——缺少:setContentView(R.layout.activity_setup_over);

    空指针异常: 04-27 01:13:57.270: E/AndroidRuntime(4942): FATAL EXCEPTION: main04-27 01:13:57.270: E/Androi ...

  3. Java实现post和get请求

    GET请求:GET请求会向服务器发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改.增加数据,不会影响资源的内容,即该请求不会产生副作用.无论进行 ...

  4. [tour]2019HUST onsite签到

    先定一个小目标,从签到题开始讲清楚 虽然因为我喜欢签到题的气球导致签到题并没有行使责任.. F.Mesh 和某CF题(我找不到了)完 全 一 致,由于某些玄学原因没有get到(orz谢罪) 给出一个6 ...

  5. Java 冒泡排序法

    冒泡排序法: public static void Bubbling(int []num){//冒泡排序法 for(int i=0;inum[j+1]){//前一个大于后一个为小到大排序 前一个小于后 ...

  6. Mysql数据字典导出

    1.phpmyadmin中自带的数据字典导出 2.利用下面的脚本: <?php /** * 生成mysql数据字典 */ header("Content-type: text/html ...

  7. 记-统计svn与git的log日志中的代码行变更

    任务要求 统计指定时间内,指定git地址与svn地址上的所有人员的代码行变更情况. 解决方案 最初为根据数据库中存储的所有git与svn地址来统计所有人员的提交代码行.之后由于库中存储的地址不全,改为 ...

  8. chrome 无头浏览器的使用

    在linux服务器上安装chrome : ubuntu: 下载页面https://www.chrome64bit.com/index.php/google-chrome-64-bit-for-linu ...

  9. Android系统中是否开启定位及定位模式的判断

    1.关于Android系统中不同的定位模式 Android系统中包括3中定位模式:   使用GPS.WLAN和移动网络 使用WLAN和移动网络 仅使用GPS 截图 特点 同时使用GPS.WIFI及基站 ...

  10. HTML DOM 的nodeType属性

    在HTML DOM中每一部分都是节点: HTML元素是元素节点 HTML中属性是属性节点 文本是文本节点 注释是注释节点 这时我们要给它区分开我们就可以使用HTML DOM的nodeType属性 no ...