资讯专栏INFORMATION COLUMN

php-composer的安装与使用方法(简化版)

mikasa / 1500人阅读

摘要:中文网系统要求运行需要以上版本。注中的路径为相对于的路径这个时候,你就可以调用你自己编写的函数库或者类库了注本文内容参考了中文网,后续还会更新其它的实用功能

1.简介

Composer 是 PHP 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。
《Composer 中文网》

2.系统要求

运行 Composer 需要 PHP 5.3.2+ 以上版本。
Composer 是多平台的,它可以同时在 Windows 、 Linux 以及 OSX 平台上运行。

3.安装(ubuntu)
curl -sS https://getcomposer.org/installer | php mv composer.phar
mv composer.phar /usr/local/bin/composer
注:如果没有安装curl,可以通过以下命令安装
apt-get update
apt-get install curl

当你的 Composer 安装完毕之后,你可以实用下列命令查看是否安装成功

composer -v
注 如果上述方法由于某些原因失败了,你还可以通过 php 下载安装器:
php -r "readfile("https://getcomposer.org/installer");" | php

这将检查一些 PHP 的设置,然后下载 composer.phar 到你的工作目录中。这是 Composer 的二进制文件。这是一个 PHAR 包(PHP 的归档),这是 PHP 的归档格式可以帮助用户在命令行中执行一些操作。

你可以通过 --install-dir 选项指定 Composer 的安装目录(它可以是一个绝对或相对路径)

4.使用

要开始在你的项目中使用 Composer,你只需要一个 composer.json 文件。该文件包含了项目的依赖和其它的一些元数据。

首先创建一个 composer.json 文件,写入相应的包名和版本号,如

{    
    "require": {
        "monolog/monolog": "1.13.*"
    }
}

这是后就写入了一个依赖包,之后安装依赖包。获取定义的依赖到你的本地项目,之后在你的项目目录中(即 composer.json 所在目录)使用 Composer 运行 install 命令。

composer install

当然,如果是在 Windows 系统中,也可以通过调用 composer.phar 包来进行依赖包的安装。

php composer.phar install

执行 composer install,就进入自动安装,安装完成后会生成一个 composer.lock 文件,里面是特定的版本号名,需要这个文件和 composer.json 一起提交到版本管理里去。

最后,在需要更新依赖包的时候,可以使用以下命令

composer update

如果只想更新部分依赖

composer update monolog/monolog
5.自动加载

对于库的自动加载信息,Composer 生成了一个 vendor/autoload.php 文件。你可以在你项目的入口文件中引入它

这使得你可以很容易的使用第三方代码。例如:如果你的项目依赖 monolog,你就可以像这样开始使用这个类库,并且他们将被自动加载。

pushHandler(new MonologHandlerStreamHandler("app.log", MonologLogger::WARNING));

$log->addWarning("Foo");
?>
6.Packagist / Composer 中国全量镜像

由于墙的问题,所以会导致 Composer 的国外镜像经常无法正常的 install,所以推荐使用国内的镜像,使用方式如下

有两种方式启用本镜像服务:

系统全局配置: 即将配置信息添加到 Composer 的全局配置文件 config.json 中。详见”方法一“

将配置信息添加到某个项目的 composer.json 文件中。详见”方法二“

方法一: 修改 composer 的全局配置文件
打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:

composer config -g repo.packagist composer https://packagist.phpcomposer.com

方法二: 修改当前项目的 composer.json 配置文件:

打开命令行窗口(windows用户)或控制台(Linux、Mac 用户),进入你的项目的根目录(也就是 composer.json 文件所在目录),执行如下命令:

composer config repo.packagist composer https://packagist.phpcomposer.com

上述命令将会在当前项目中的 composer.json 文件的末尾自动添加镜像的配置信息(你也可以自己手工添加):

"repositories": {
    "packagist": {
        "type": "composer",
        "url": "https://packagist.phpcomposer.com"
    }
}
7.使用 Composer 中的 autoload 实现自动加载命名空间

Composer 除了可以帮你安装所需要的依赖包以外,还可以实现自动加载命名空间的功能,当我们自己编写的函数库与类库需要自动加载时,我们就可以通过 composer.json 来实现。它类似于 php 中的 spl_autoload_register(), 其实如果你去查看 Composer 中的源代码,你会看到它的自动加载功能也是用了 spl_autoload_register() 这个函数。《具体可看此文章详细介绍》

我们在 composer.json 里添加如下代码:

{
    "autoload": {
        "psr-4": {
            "Test": "test/",
            "Testtwo": "testtwo/"
        }
    }
}

这个配置文件中有一个 autoload 段,其中有个 《PSR-4》,psr-4 是一个基于 psr-4 规则的类库自动加载对应关系,只要在其后的对象中,以 ”命名空间“: “路径” 的方式写入自己的类库信息修改完成后,之后,在执行下列命令,即可完成自动加载。

composer dumpautoload
注: "psr-4": {"Test": "test/"} 中的 "test/" 路径为相对于  composer.json 的路径

这个时候,你就可以调用你自己编写的函数库或者类库了


注:本文内容参考了《Composer 中文网》,后续还会更新 Composer 其它的实用功能

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/26093.html

相关文章

  • Rancher推出k3OS:业界首个Kubernetes操作系统,领跑边缘计算生态

    摘要:虽然可以安装在任何的发行版上,但将与底层操作系统分开进行系统补丁或升级的话,操作会很复杂。简化系统补丁和升级管理员可以通过一组通用的文件管理发行版和发行版,并利用协调部署操作系统升级。 美国时间2019年4月24日,业界领先的容器软件提供商Rancher Labs(以下简称Rancher)正式发布k3OS,这是业界首个专为Kubernetes而生的极轻量操作系统,资源消耗极低,操作极简...

    joywek 评论0 收藏0
  • PHP-生成二维码(qr-code)

    摘要:生成二维码首先我们需要在项目中引入类文件,现在基本上是通过命名空间路径的方式进行自动加载,它的位置位于扩展根目录的文件中。 1.为什么要写这篇文章 最近做项目要生成二维码让用户做跳转,搜索了一下发现网上都是用一个叫做 phpqrcode 的扩展,在 github 上搜索了一下发现这个项目作者在6年前就已经没有维护了,百度的文章也是千篇一律的你复制我的我复制你的,所以只好在 github...

    endless_road 评论0 收藏0
  • webpack2正式优化简化操作

    摘要:启动新技术提供测试框架进行单元测试,代码覆盖率报告,可与和快速对接。关于的模块化,预处理器的编译。页面的其他资源文件,通过引入单元测试日后调整,待开发使用手册流程基本位于创建视图更多说明主动引入的默认地址为位于配置相关的和文件。 webpack2-Scaffolding showImg(https://segmentfault.com/img/remote/14600000082840...

    0x584a 评论0 收藏0

发表评论

0条评论

mikasa

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<