php composer 包依赖管理工具 (一)

该跟上时代了,学习composer,一个php包依赖的管理工具

感觉和npm差不多,npm是nodejs的包管理工具,而composer是php的包管理工具

安装

https://www.phpcomposer.com/

windows直接下载安装程序安装(建议是使用安装文件全局安装)

linux看上面教程的步骤,就不多说了

使用

感觉大部分命令和npm还是差不多的

安装&更新

composer install

composer update

$ composer install
//根据你目录下的composer.json文件进行依赖包安装,存放在vendor目录下,如果当前目录下存在 composer.lock 文件,它会优先从此文件读取依赖版本
$ composer update [package1] [package2]
//这个命令的作用是获取最新版本的依赖包,并且还会升级composer.lock的内容,如果后面接了包名的话,则会只更新输入的包,并且可以使用通配符,例如 vendor/*

初始化

composer init

$ composer init
//执行后会让你输入你的包的信息,然后会在目录下生成一个composer.json文件里面就包含着你刚刚输入的信息

搜索包

composer search

你可以通过命令来搜索,也可以访问这个网站进行搜索https://packagist.org/

$ composer search helloworld 
google/appengine-symfony-starter-project A Symfony hello world for App Engine
ehime/hello-world Sample Composer project
pmvc-plugin/image Hello World Plugin, show you how the pmvc work
tristana/hello-world composer package demo
joomlatools/composer-helloworld A Hello World component!
aura/framework-demo A "hello world" demo for the Aura framework and system.
susomena/hello Simple 'Hello, world!' Laravel package
zoular/helloworld
yunhack/helloworld This is a test,upload a helloWorld project to Github for my first commit
weeboont/helloworld test
web/helloworld helloworld
wangyaoxu/helloworld
vishal/helloworld AWS SDK for PHP - Use Amazon Web Services in your PHP project
vijayojha89/helloworld Plugin for helloworld
vdc/helloworld helloworld
zend_mm_heap corrupted

//我搜了一下helloworld,也看了网页的,安装这个,等下试着使用它吧https://packagist.org/packages/ehime/hello-world

申明依赖

composer require

搜索到我们想用的包之后就得开始告诉我们的composer,我们要用这个包了

$ composer require ehime/hello-world 
Using version ^1.0 for ehime/hello-world
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 1 install, 0 updates, 0 removals
  - Installing ehime/hello-world (1.0.5): Downloading (100%)
Writing lock file
Generating autoload files
zend_mm_heap corrupted

//成功,目录下也创建了一个vendor的文件夹,再进去看一看发现多了不少东西,其中就有ehime/hello-world和autoload.php

开始使用

我们新建一个index.php文件,写代码啦

<?php

require_once './vendor/autoload.php'; //引入自动加载文件

use HelloWorld\SayHello;//使用这个包

echo SayHello::world();//调用这个包里面的方法,world

//然后运行一下会发现页面输出了 Hello World, Composer! 就证明我们成功了
//简简单单的几行

简单的使用就到这里截止,继续学习后再继续更新

官方命令列表

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据