首页 开发工具 composer 最全面详细的Composer安装配置教程(win/linux)

最全面详细的Composer安装配置教程(win/linux)

Oct 27, 2021 pm 04:01 PM
composer

Windows 和 Linux 下 Composer 的安装及配置

介绍:  Composer 是 PHP 用来管理依赖( dependency )关系的工具。你可以在自己的项目中声明所依赖的外部工具库( libraries ), Composer 会帮您安装这些依赖的库文件。

(一)Window安装

1.1 下载Composer

Composer官网下载Composer.exe应用(https://getcomposer.org/)

1.2 安装Composer

下载的版本为最新的Composer版本并且会自动设置PATH环境变量,这样您就可以从任何目录调用Composer

  • 根据本地php配置的版本选择 ,然后一路下一步安装即可

  • 全局配置

①搜索“path”—>打开“编辑系统环境变量”—“环境变量”

②配置Administrator用户变量


1.3 安装成功

# win+R 输入cmd 进入C:\Users\Administrator>composer
 ______
 / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
 /_/
Composer version 2.1.9 2021-10-05 09:47:38
登录后复制

(二)Linux安装

2.1 下载Composer

**# 进入根目录下载** [root@VM-12-9-centos /] curl -sS https://getcomposer.org/installer | php
Composer (version 2.1.9) successfully installed to: //composer.phar
Use it: php composer.phar #下载成功#友情提示:下载因为是外网可能会出现请求失败的情况,耐心多尝试下就成功了
登录后复制
  • 如果下载频繁失败 ,则可以使用阿里云的镜像下载

#本镜像与 Packagist 官方实时同步,推荐使用最新的 Composer 版本
[root@VM-12-9-centos /] curl -sS mirrors.aliyun.com/composer/compos...

2.2 全局配置

# 复制composer.phar到/usr/local/bin/目录下生成composer的目录,方便全局使用[root@VM-12-9-centos /] mv composer.phar /usr/local/bin/composer
登录后复制

2.3 更换镜像源

由于国外的网站在国内请求会很慢,所以我们可以更换国内源来加速源的下载。国内镜像源有很多种,下面列举常用的几种,您可以根据需求选择其中一种即可。

  • 阿里云Composer镜像推荐
    composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
    登录后复制
  • 国内云Composer镜像
    composer config -g repo.packagist composer https://packagist.phpcomposer.com
    登录后复制
  • 腾讯云Composer镜像
    composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/
    登录后复制
  • 华为云Composer镜像
    composer config -g repo.packagist composer https://repo.huaweicloud.com/repository/php/
    登录后复制
  • 安畅云Composer镜像
    composer config -g repo.packagist composer https://php.cnpkg.org/
    登录后复制

    2.4 安装成功

    [root@VM-12-9-centos etc]# composer
     ______
    / ____/___  ____ ___  ____  ____  ________  _____
    / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
    / /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
    \____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                      /_/
    Composer version 2.1.9 2021-10-05 09:47:38
    登录后复制

(三)Composer命令

3.1 查看版本

composer --version# 查看版本会看到当前版本以及更新时间[root@VM-12-9-centos /]# composer --versionComposer version 2.1.9 2021-10-05 09:47:38
登录后复制

3.2 版本升级

# 升级将默认升到最新版本composer self-update# **友情提示:** 版本升级命令将会从官方版本去下载composer,phar镜像,速度将受限!强烈建议全局配置加速镜像
登录后复制

3.3 执行诊断命令

composer diagnose
登录后复制

3.4 清除缓存

composer clear
登录后复制

3.5 项目更新composer.lock

composer update --lock
登录后复制

3.6 调试

# **Composer调试只需要在命令前加上-vvv就可以打印出错信息** # 例如下载laravel命名为blog的项目composer -vvv create-project laravel/laravel blog
登录后复制

3.7 安装依赖包

# 该命令仅限在项目根目录操作
composer install
登录后复制

3.8 更新依赖包

# 该命令仅限在项目根目录操作

### 更新所有依赖包
composer update

### 更新指定依赖包
composer update monolog/monolog

### 更新多个指定依赖包
composer update monolog/monolog symfony/dependency-injection

### 根据通配符匹配更新依赖包
composer update monolog/monolog symfony/*
登录后复制

3.9 移除依赖包

# 移除指定依赖包
composer remove monolog/monolog

# 根据通配符匹配移除依赖包
composer remove monolog/monolog symfony/*
登录后复制

3.10 搜索依赖包

# 搜索依赖包:输出包及其描述信息
composer search monolog

# 只搜索包:--only-name
composer search --only-name monolog

# 根据通配符搜索依赖包
composer search mono*
登录后复制

3.11 查看依赖包

# **该命令仅限项目根目录使用**# 查看**当前项目**已安装的依赖包
composer show

# 根据通配符**当前项目**进行筛选
composer show laravel*# 查看**当前项目**指定依赖包
composer show laravel/tinker
登录后复制

(四)项目的使用

在项目中,我们常常使用composer来进行包或者库的下载与更新,但是往往我们在使用中也会遇到各种各样的问题。接下来,我们将解决常见的问题。

4.1 宝塔面板安装Composer

composer 的安装需要php开启 putenv 函数 ,否则会安装失败!由于 putenv 函数可以设置特定的环境变量而被认为是一个潜在的安全漏洞,因此php在安装之初是默认禁止它的!

  • 删除禁用函数

宝塔面板出于对于安全的考虑,自动禁用了一些函数;因为安装Composer也会用到相应的函数,我们应该先删除在安装 Composer 。          安装 Composer 需要删除 的 PHP 禁用函数:putenv()          友情提示: 在使用 Composer 的时候需要根据项目的php版本去做操作(安装多少个PHP版本就需要相对应删除),下图示范是根据 php-8.0 来操作的。

  • 非宝塔面板管理操作
# 进入php.ini配置文件编辑--->搜索(输入 / 进入搜索模式,搜索disable_functions)# ---->依次删除putenv**### 第一步:查询php.ini路径** [root@VM-12-9-centos 74]# find / -name "php.ini"/www/server/php/56/etc/php.ini
/www/server/php/80/etc/php.ini
/www/server/php/74/etc/php.ini

**### 第二步:依次编辑php.ini文件** : 删除函数putenvvim /www/server/php/56/etc/php.ini

**### 第三步:搜索“disable_functions”** # ESC + :+ / + disable_functions 将会自动定位到指定位置disable_functions = passthru,exec,system,**putenv** ,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv

**### 第四步:保存文件并退出** ESC + :wq!
登录后复制
  • 友情提醒

宝塔是支持php多版本的,如果在不同版本的php中使用 composer ,只要开启php中的 putenv 函数即可!

4.2 PHP项目使用

  • composer.lock已经存在

使用场景: 由于下载代码或者git代码或者部署项目时会存在 composer.lock , 首先应该删除composer.lock

# 项目中composer.lock已经存在,需要进行删除,再重新安装,安装成功后会重新生成composer.lock文件# 案例示范:**### 第一步:进入项目blog根目录** cd www\wwwroot\blog

**### 第二步:删除composer.lock文件** # 删除请核对文件名后谨慎操作rm -rf composer.lock

**### 第三步:重新composer安装项目所需包** composer install
登录后复制

(五)结尾

提示: 不要忘了经常执行 composer selfupdate 以保持 Composer 一直是最新版本哦!   

原文地址:https://learnku.com/articles/62076                               

以上是最全面详细的Composer安装配置教程(win/linux)的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

laravel入门实例 laravel入门实例 Apr 18, 2025 pm 12:45 PM

Laravel 是一款 PHP 框架,用于轻松构建 Web 应用程序。它提供一系列强大的功能,包括:安装: 使用 Composer 全局安装 Laravel CLI,并在项目目录中创建应用程序。路由: 在 routes/web.php 中定义 URL 和处理函数之间的关系。视图: 在 resources/views 中创建视图以呈现应用程序的界面。数据库集成: 提供与 MySQL 等数据库的开箱即用集成,并使用迁移来创建和修改表。模型和控制器: 模型表示数据库实体,控制器处理 HTTP 请求。

使用 Composer 解决推荐系统的困境:andres-montanez/recommendations-bundle 的实践 使用 Composer 解决推荐系统的困境:andres-montanez/recommendations-bundle 的实践 Apr 18, 2025 am 11:48 AM

在开发一个电商网站时,我遇到了一个棘手的问题:如何为用户提供个性化的商品推荐。最初,我尝试了一些简单的推荐算法,但效果并不理想,用户的满意度也因此受到影响。为了提升推荐系统的精度和效率,我决定采用更专业的解决方案。最终,我通过Composer安装了andres-montanez/recommendations-bundle,这不仅解决了我的问题,还大大提升了推荐系统的性能。可以通过一下地址学习composer:学习地址

解决 Craft CMS 中的缓存问题:使用 wiejeben/craft-laravel-mix 插件 解决 Craft CMS 中的缓存问题:使用 wiejeben/craft-laravel-mix 插件 Apr 18, 2025 am 09:24 AM

在使用CraftCMS开发网站时,常常会遇到资源文件缓存的问题,特别是当你频繁更新CSS和JavaScript文件时,旧版本的文件可能仍然被浏览器缓存,导致用户无法及时看到最新的更改。这个问题不仅影响用户体验,还会增加开发和调试的难度。最近,我在项目中遇到了类似的困扰,经过一番探索,我找到了wiejeben/craft-laravel-mix这个插件,它完美地解决了我的缓存问题。

laravel怎么查看版本号 laravel查看版本号方法 laravel怎么查看版本号 laravel查看版本号方法 Apr 18, 2025 pm 01:00 PM

Laravel框架内置了多种方法来方便地查看其版本号,满足开发者的不同需求。本文将探讨这些方法,包括使用Composer命令行工具、访问.env文件或通过PHP代码获取版本信息。这些方法对于维护和管理Laravel应用程序的版本控制至关重要。

如何使用 Composer 简化邮件营销:DUWA.io 的应用实践 如何使用 Composer 简化邮件营销:DUWA.io 的应用实践 Apr 18, 2025 am 11:27 AM

在进行邮件营销活动时,我遇到了一个棘手的问题:如何高效地创建并发送HTML格式的邮件。传统的方法是手动编写代码并使用SMTP服务器发送邮件,但这不仅耗时,而且容易出错。在尝试了多种解决方案后,我发现了DUWA.io,这是一个简单易用的RESTAPI,能够帮助我快速创建和发送HTML邮件。为了进一步简化开发流程,我决定使用Composer来安装和管理DUWA.io的PHP库——captaindoe/duwa。

如何使用 Composer 快速搭建 Fecmall 高级项目模板 如何使用 Composer 快速搭建 Fecmall 高级项目模板 Apr 18, 2025 am 11:45 AM

在开发电商平台时,选择合适的框架和工具至关重要。最近我在尝试构建一个功能丰富的电商网站时,遇到了一个棘手的问题:如何快速搭建一个可扩展且功能完善的电商平台。我尝试了多种解决方案,最终选择了Fecmall的高级项目模板(fecmall/fbbcbase-app-advanced)。通过使用Composer,这个过程变得非常简单和高效。可以通过以下地址学习Composer:学习地址

如何使用 Composer 提升 Laravel 应用的安全性:wiebenieuwenhuis/laravel-2fa 库的应用 如何使用 Composer 提升 Laravel 应用的安全性:wiebenieuwenhuis/laravel-2fa 库的应用 Apr 18, 2025 am 11:36 AM

在开发一个Laravel应用时,我遇到了一个常见但棘手的问题:如何提升用户账户的安全性。随着网络攻击的日益复杂,单一的密码保护已经不足以保障用户的数据安全。我尝试了几种方法,但效果都不尽如人意。最终,我通过Composer安装了wiebenieuwenhuis/laravel-2fa库,成功地为我的应用添加了双因素认证(2FA),大大提升了安全性。

提升 Doctrine 实体序列化效率:sidus/doctrine-serializer-bundle 的应用 提升 Doctrine 实体序列化效率:sidus/doctrine-serializer-bundle 的应用 Apr 18, 2025 am 11:42 AM

在处理一个包含大量Doctrine实体的项目时,我遇到了一个棘手的问题:每次序列化和反序列化实体时,性能变得非常低效,导致系统响应时间显着增加。我尝试了多种优化方法,但效果不佳。幸运的是,通过使用sidus/doctrine-serializer-bundle,我成功地解决了这个问题,显着提升了项目的性能。

See all articles