PHP 包管理器 Composer 详解

Composer 是 PHP 的依赖管理工具,主要用于管理外部工具库间的依赖关系,就像 Node.js 中的 NPM。但 Composer 不是一个包管理器!固然它触及 “packages” 和 “libraries”,但它是在项目的根底上停止管理,在项目的目录中停止装置。默许不会在全局装置任何东西。因而,这仅仅是一个依赖管理。

  • 官网地址:https://www.phpcomposer.com/
  • 中文文档:https://docs.phpcomposer.com/
  • 依赖存储:https://packagist.org/

装置

部分装置

在当前目录下运转命令行工具,运用如下命令将 composer.phar 文件下载下来,然后你就能够经过 php composer.phar 指令即可运用 Composer 了!

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

留意:composer.phar 是 Composer 的二进制文件,这是 PHP 的归档格式能够协助用户在命令行中执行一些操作。
留意:运用了宝塔面板可能会报错 proc_open 与 proc_get_status 未定义,删除禁用的函数即可。

全局装置(引荐)

Windows 系统
下载并且运转 Composer-Setup.exe 即可,留意设置好系统的环境变量,之后就能够直接运用 composer 命令运用 Composer 了!
Composer 下载:https://getcomposer.org/download/

留意:运用了宝塔面板可能会报错 putenv 未定义,删除禁用的函数即可。

Mac 或 Linux 系统

翻开命令行窗口并执行如下命令将前面下载的 composer.phar 文件挪动到 /usr/local/bin/ 目录下即可。

sudo mv composer.phar /usr/local/bin/composer

运用

以下内容以全局装置为例,部分装置执行将命令 composer 交换为 php composer.phar 即可。

  • 假如你的项目目录下存在 composer.json 或 composer.lock 文件,运转 composer install 会自动装置项目所需依赖。
  • 假如你是新项目,运转 composer init 命令窗领会以交互方式请求您填写一些信息以生成一份 composer.json 文件管理依赖。

初始化 Composer

在当前项目目录下运转命令窗体并输入如下命令:

composer init

图片[1]-PHP 包管理器 Composer 详解-孤勇者社区

依据交互内容一步步创立完成后会在当前项目目录下生成如下文件构造:
图片[2]-PHP 包管理器 Composer 详解-孤勇者社区

    • src : 契合 psr-4 标准的自动加载文件
    • vender : 项目依赖包及自动加载文件 autoload.php
    • composer.json : 描绘当前项目中依赖关系的 json 文件
  • composer.lock : 锁定版本的 composer.json 文件

留意:项目中运用 Composer 管理依赖时需引入 autoload.php 文件。

require('vendor/autoload.php');

装置依赖

运用详细的依赖装置命令装置依赖包即可开端运用,比方这里装置 nikic/fast-route 路由管理工具。

composer require nikic/fast-route

装置完成后参考相应的工具文档运用即可。

命令行

在 Composer 中常用的命令整理如下:

  • –version (-V) : 显现当前应用程序的版本信息
  • –help (-h) : 显现协助信息
  • init : 以交互方式初始化一个新的项目
  • install : 获取定义的依赖到你的本地项目
  • update : 获取依赖的最新版本
  • config : 更改 composer 的配置
  • dump-autoload : 配置自动加载文件

参考文档:

  • 中文文档:https://docs.phpcomposer.com/
  • 下载地址:https://getcomposer.org/download/
------本页内容已结束,喜欢请分享------

感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
点赞15赞赏 分享
评论 共1条
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片
    • 头像时谨0