composer的安装和使用知识整理

PHPer 2020-04-06 1523 0 1
用composer的时候发现还是要学下 20200406 composer安装和使用的内容不是很多,慢慢写就写完了,O(∩_∩)O哈哈~ 20220524

如何安装 Composer

安装前请务必确保已经正确安装了PHP。打开命令行窗口并执行php -v查看是否正确输出版本号。

打开命令行并依次执行下列命令安装最新版本的 Composer:

php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"

执行第一条命令下载下来的composer-setup.php脚本将简单地检测php.ini中的参数设置,如果某些参数未正确设置则会给出警告;然后下载最新版本的composer.phar文件到当前目录。

上述 3 条命令的作用依次是:

下载安装脚本 -composer-setup.php- 到当前目录。

执行安装过程。

删除安装脚本。

局部安装

上述下载 Composer 的过程正确执行完毕后,可以将composer.phar文件复制到任意目录(比如项目根目录下),然后通过php composer.phar指令即可使用 Composer 了!

全局安装

全局安装是将 Composer 安装到系统环境变量PATH所包含的路径下面,然后就能够在命令行窗口中直接执行composer命令了。

Mac 或 Linux 系统:

打开命令行窗口并执行如下命令将前面下载的composer.phar文件移动到/usr/local/bin/目录下面:

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

之后执行

composer -V

查看版本

Composer version 2.3.5 2022-04-13 16:43:00

Windows 系统:

找到并进入 PHP 的安装目录(和你在命令行中执行的php指令应该是同一套 PHP)。

将composer.phar复制到 PHP 的安装目录下面,也就是和php.exe在同一级目录。

在 PHP 安装目录下新建一个composer.bat文件,并将下列代码保存到此文件中。

@php "%~dp0composer.phar" %*

最后重新打开一个命令行窗口试一试执行composer --version看看是否正确输出版本号。 ...

立即注册
分享的网址网站均收集自搜索引擎以及互联网,非查问网运营,查问网并没有提供其服务,请勿利用其做侵权以及违规行为。

更新于:2022-05-24 08:17:43
    您需要登录后才可以评论。 立即注册

    解决Yii2里引入自定义文件 composer dump-autoload后报错:Composer detected issues in your platform: Your Composer dependencies require

    composer dump-autoload 后报错,Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 8.0.0".

    想在Yii2里引入新的自定义文件,结果发现引入的文件中的函数不被调用,于是网上查了下,说是用

    composer dump-autoload
    

    结果运行完后,正常执行了

    Generating autoload files
    Generated autoload files
    

    访问项目发现所有页面都打不开了,报错提示:Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 8.0.0". ...

    立即注册
    更新于:2022-05-07 08:05:22

    Windows环境下Composer的安装教程遇到的问题及解决方法

    在Windows环境下安装Composer,遇到的问题及解决方案

    1.设置了安装路径以及选择了php.exe后,最终安装的时候一直在那等候,不进入真正的安装!

    解决方法:我这里选择的php.exe是共用人家phpstudy的php版本,之所以安装一直不进行,就

    是因为phpstudy打开着,进程处于占用状态,当把phpstudy关闭后,安装正常!

    2.composer安装成功后,在命令提示符里输入composer命令,仍然提示composer不是内部命令

    解决方法:这是因为在安装composer后,必须新打开一个命令提示符,而我之前还是在安装composer

    前的命令提示符窗口里进行,所以提示有误!

    3.在Windows环境下安装Composer(注:Composer要求PHP版本在5.3.2+),你可能会遇到这种安装失败的情况:

    出错信息是 "The openssl extension is missing, which will reduce the security and stability of

    Composer. If possible you should enable it or recompile php with --with-openssl" ,大意就是你的PHP缺少openssl扩展。

    在php的安装目录比如说C:\wamp\bin\php\php5.3.3\中,找到找个目录下的php.ini文件,然后去掉 extension=php_openssl.dll

    这一行开头的注释,之后就可以顺利安装Composer了。

    4:遇到的问题

    在使用composer install 报如下错误的,一般是缺少 php 的扩展,解决方案,

    安装php的扩展

    例如

    cd /usr/local/php/lib

    yum install php-mbstring

    Loading composer repositories with package information

    Installing dependencies (including require-dev) from lock file

    Your requirements could not be resolved to an installable set of packages.

    Problem 1

    - Installation request for php-amqplib/php-amqplib v2.7.0 -> satisfiable by php-amqplib/php-amqplib[v2.7.0].

    - php-amqplib/php-amqplib v2.7.0 requires ext-bcmath * -> the requested PHP extension bcmath is missing from your system.

    Problem 2

    - php-amqplib/php-amqplib v2.7.0 requires ext-bcmath * -> the requested PHP extension bcmath is missing from your system.

    - php-amqplib/thumper v0.5.0 requires php-amqplib/php-amqplib ^2.6 -> satisfiable by php-amqplib/php-amqplib[v2.7.0].

    - Installation request for php-amqplib/thumper v0.5.0 -> satisfiable by php-amqplib/thumper[v0.5.0].

    To enable extensions, verify that they are enabled in your .ini files:

    - /etc/php.ini

    - /etc/php.d/curl.ini

    - /etc/php.d/fileinfo.ini

    - /etc/php.d/json.ini

    - /etc/php.d/phar.ini

    - /etc/php.d/zip.ini ...

    立即注册
    更新于:2022-04-16 17:18:21

    Packagist.org 明确了 Composer 1.x 被弃用的时间表

    2021-02-25

    地球人都知道,Composer 2.0已于 2020 年 10 月下旬发布。我们在发布公告中已经暗示 Composer 1.x 的生命周期即将结束,不过,今天我们将 Packagist.org 对 Composer 1.x 的支持期限(以前所设想的)稍做一下延长。

    首先,我们在过去的几个月中意识到 Composer 1.x 可能要存在数年才能完全消失。 Composer 被安装在太多地方了,因此我们将必须长时间保持对 v1 版元数据的支持(以保证 Composer 1.x 正常运行),以防止干扰用户现有的工作流程。

    但是,我们遇到的最大障碍是:由于 v1 版元数据所使用的格式的限制,因此要占用 packagist.org 的很多资源才能将其转储到静态 JSON 文件中。 因此,我们采取了两个步骤来减少其对我们的基础架构的负面影响:

    从 2021 年 5 月开始降低 v1 版元数据 API 的更新频率

    所有软件包(package)的新版本的更新频率将从当前的每分钟降低到每 15 分钟一次。这意味着新版本需要经过几分钟的时间才能用于 Composer 1.x 的安装。

    从好的方面来看,降低 v1 版元数据的更新频率,意味着我们可以将 v2 版元数据的更新频率提升到秒级,而无须与 v1 版元数据的更新(分钟级)捆绑在一起。

    从 2021 年 5 月开始,限制通过 v1 版元数据 API 访问未使用的软件包

    我们面临的另一个问题是:我们目前需要处理 300,000 个软件包、2,700,000 个版本的同步,而 v1 格式使用了很长的文件列表,这意味着软件包的数量对处理流程的影响很大。...

    立即注册
    更新于:2022-05-24 08:26:44

    慎用composer update

    不出问题还好,出了问题一堆事情

    https://blog.csdn.net/wulove52/article/details/78392663

    问题说明

    我们经常要往现有的项目中添加扩展包,有时候因为文档的错误引导,如下图来自 这个文档 的:

    45f11c9ca9_normal.png

    composer update 这个命令在我们现在的逻辑中,可能会对项目造成巨大伤害。

    因为 composer update 的逻辑是按照 composer.json 指定的扩展包版本规则,把所有扩展包更新到最新版本,注意,是 所有扩展包,举个例子,你在项目一开始的时候使用了 monolog,当时的配置信息是

    "monolog/monolog": "1.*",
    

    安装的是 monolog 1.1 版本,而一个多月以后的现在,monolog 已经是 1.2 了,运行命令后直接更新到 1.2,这时项目并没有针对 1.2 进行过测试,项目一下子变得很不稳定,情况有时候会比这个更糟糕,尤其是在一个庞大的项目中,你没有对项目写完整覆盖测试的情况,什么东西坏掉了你都不知道。

    那应该使用哪个命令呢?install, update 还是 require ?

    接下来我们一一解释。

    简单解释

    package - 从 composer.json 或者对应包的配置,并更新到最新;
    new/package - 添加安装 new/package, 可以指定版本,如: composer require new/package ~2.5.
    

    流程

    下来介绍几个日常生产的流程,来方便加深大家的理解。

    流程一:新项目流程
    创建 composer.json,并添加依赖到的扩展包;
    运行 composer install,安装扩展包并生成 composer.lock;
    提交 composer.lock 到代码版本控制器中,如:git;

    流程二:项目协作者安装现有项目
    克隆项目后,根目录下直接运行 composer install 从 composer.lock 中安装 指定版本 的扩展包以及其依赖; ...

    立即注册
    分享的网址网站均收集自搜索引擎以及互联网,非查问网运营,查问网并没有提供其服务,请勿利用其做侵权以及违规行为。
    更新于:2022-04-12 03:41:49

    Could not open input file: composer.phar报错

    今天使用composer下载yii报错提示 Could not open input file: composer.phar

    原因肯定是:在别的项目下载过composer没有设置全局变量或者没有安装composer

    解决:

    打开命令行并依次执行下列命令安装最新版本的 Composer:

    php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
    php composer-setup.php
    php -r "unlink('composer-setup.php');"
    

    原文链接:https://blog.csdn.net/jizha1917/article/details/94245063...

    立即注册
    更新于:2021-12-10 20:38:57

    composer在国内使用效果很差,总提示没有找到要下载的文件

    建议直接在国外的服务器上先把要下的项目下好,然后在传到本地

    composer在国内使用效果很差,总提示没有找到要下载的文件。建议直接在国外的服务器上先把要下的项目下好,然后在传到本地。各种报错都没了。...

    立即注册
    更新于:2021-12-10 23:38:29

    compser安装后无法使用,php7.4版本下安装的

    composer -v

    /usr/bin/env: php: No such file or directory...

    立即注册
    更新于:2021-12-14 08:24:55

    win10系统 安装好composer后 cmd 命令行下输入composer提示不是内部或外部的命令,也不是可执行的程序或批处理文件

    在 windows CMD 下运行composer 出现错误提示: 不是内部或外部命令,也不是可运行的程序或批处理文件,这是因为没有配置 PATH 环境变量。

    以 win10 为例,找到此电脑右击选择属性,点击左侧的高级系统设置,选择高级>环境变量

    eb2b9758dd_normal.png

    弹出环境变量窗口,找到PATH,点击编辑

    6787ff7b3a_normal.png...

    立即注册
    更新于:2021-12-14 20:05:42

    使用composer安装项目需要注意的

    全局改为国内镜像命令:composer config -g repo.packagist composer https://packagist.phpcomposer.com,之后解决composer install遇到:Your requirements could not be resolved to an installable set of packages.方法:解决办法:直接忽略版本 composer install --ignore-platform-reqs 或者 composer update --ignore-platform-reqs

    在国内本地测试时,因为网络的原因,composer install和update很难,会各种报错

    所以建议切换成国内镜像

    composer 默认地址改为中国镜像地址,以及中国镜像地址还原成默认地址

    一、查看当前镜像地址

    在命令行输入如下命令,即可查看全局镜像地址:

    复制代码

    $ composer config -g repo.packagist
    
    {
      "type":"composer",
      "url":"https://packagist.org",
      "allow_ssl_downgrade":true
    }

    下面有把地址修改为中国镜像,如果中国镜像出现了问题,那么您可以还原成官方的默认地址,下面是详细。

    二、启用中国全量镜像服务:

    启用中国全量镜像服务有两种方式,具体配置方法如下:

    1.系统全局配置:

    可以使用 composer config -l -g 查看所有全局配置

    composer config -l -g

    使用如下命令将地址改为中国镜像地址:

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

    镜像名

    地址

    赞助商

    更新频率

    备注

    阿里云 Composer 镜像

    https://mirrors.aliyun.com/composer/

    阿里云

    96 秒

    推荐

    腾讯云 Composer 镜像

    https://mirrors.cloud.tencent.com/composer/

    腾讯云

    24 小时

    -

    PHP 国内 Composer 镜像

    https://packagist.phpcomposer.com

    仁润股份

    24 小时

    不稳定

    华为云 Composer 镜像

    https://repo.huaweicloud.com/repository/php/

    华为云

    未知

    未知...

    立即注册
    分享的网址网站均收集自搜索引擎以及互联网,非查问网运营,查问网并没有提供其服务,请勿利用其做侵权以及违规行为。
    更新于:2021-12-14 21:07:54

    composer 设置Github全局 token,在所有项目上都使用阿里云镜像

     composer引入GitHub上项目是需要使用token

    如果想要以后都不用输入这个token,可以通过全局设置的办法解决,命令如下:

    composer config --global github-oauth.github.com <token>
    

    OK了 ...

    立即注册
    更新于:2022-05-18 11:28:12
    相关内容

    PHP7.2以上版本的安装问题

    推荐内容

    分享几个好用的bt搜索bt资源下载网址网站

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享

    全网最新bt磁力搜索引擎bt资源bt网站网址分享

    怎样使用V2Ray代理和SSTap玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩...

    sstap游戏代理教程 从此玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩虹六...

    使用V2Ray的mKCP协议加速游戏

    v2rayN已停止工作