首頁  >  文章  >  開發工具  >  最全面詳細的Composer安裝設定教學(win/linux)

最全面詳細的Composer安裝設定教學(win/linux)

藏色散人
藏色散人轉載
2021-10-27 16:01:0712644瀏覽

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中文網其他相關文章!

陳述:
本文轉載於:learnku.com。如有侵權,請聯絡admin@php.cn刪除