php使用composer常见问题及解决办法

目录
  • 错误问题一
  • 错误问题二
  • 错误问题三
  • 错误问题四
  • 错误问题五
  • 中文镜像使用办法
  • 使用办法

composer是PHP中非常优秀的一个包管理工具,可以帮助我们来管理项目所需要依赖的所有包以及插件,也可以用来从packagist中创建一个项目。但是在初次使用中会出现各种各样的问题,现我将别的开发人员问过我的的关于composer的错误以及解决办法整理如下,希望能够帮大家跳坑:

错误问题一

Failed to decode response: zlib_decode(): data error
Retrying with degraded mode. check https://……

导致这个错误的原因一般是网络的原因。因为上边执行的语句:

composer global require "fxp/composer-asset-plugin:^1.2.0"

在请求将yii2的项目安装插件安装到全局是出现这个问题。composer页提供了一个degraded模式的解决方法。如果我们开启了ipv6则需要将IPv6取消勾选。

如果使用该方法也无法处理那么就需要使用composer中文全量镜像或其他VPN的方式。

错误问题二

The “http://getcomposer.org/versions“file could not be downloaded:
php_network_getaddresses: getaddrinfo failed: 不知道这样的主机。
failed to open stream: php_network_getaddresses: getaddrinfo failed: 不知道这样的主机

这也是比较经典的一个问题这时因为在安装composer时其实还是需要从composer的官方网站下载composer.phar所以如果你的网站无法访问国外网站那么久会有问题。当然你可以直接下载composer.phar来使用,前提是要将PHP加入到环境变量中。

错误问题三

The openssl extension is required for SSL_TLS protection but is not available,If you can not enable the openssl extension you can disable this error. at you own risk, by setting the ‘disable-tls' option to true

这个算是一个比较经典的错误了。错误很明显是因为没有开启php_openssl打开方法为
找到你的php.ini文件找到

;extension=php_openssl.dll

把前边的分号(;)删除。当然如果这样做了还没有生效有可能是你的电脑中安装了多个php那么就需要在环境变量中查看下写在path中的PHP路径在那儿。找到路径中的php.ini按照上述过程修改。

错误问题四

-yiisoft/yii2 2.0.10 requires ext-mbstring * -> the requested PHP extension mbstring is missed

这个错误也是经常会犯的错误。是因为composer安装yii2时需要mbstring这个处理多字节字符串的扩展。开启方法和上一个问题一样,删除php_mbstring.dll前的分号

;extension=php_mbstring.dll

当然如果没有生效还是要去看看系统环境变量中的PHP路径是哪个。

错误问题五

Content-Length mismatch

导致这个问题的主要原因还是网络的原因让请求的数据不完整导致的。正确的做法是使用中文镜像库或者vpn。

中文镜像使用办法

使用中文镜像基本能解决以上所有问题(除composer的安装),也是非常非常需要的。

使用办法

在composer安装好后打开命令行工具执行以下的语句:

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

这样会去中文全量镜像https://packagist.phpcomposer.com中去请求包以及插件的下载安装。

以上就是php使用composer常见问题及解决办法的详细内容,更多关于php composer的资料请关注我们其它相关文章!

(0)

相关推荐

  • Laravel 解决composer相关操作提示php相关异常的问题

    Laravel 的一大特色就是使用 composer 来管理依赖包,这使得整个项目的升级.扩展变得异常容易.一般情况下,只需要我们输入几个命令并按下回车,就能完成插件包的安装.更新以及卸载工作. 但有时候你会碰到一种比较有意思的问题.那就是使用 composer 进行相关安装.更新插件操作的时候,却报 PHP 程序异常.比如,github中一个项目,在你上次更新之后上游代码又加入新功能,使用了一个新的依赖包.这时你使用git pull更新代码后,依赖包并没有安装,那么再用composer upd

  • PHP创建自己的Composer包方法

    仓库(Repository) 仓库是软件开发中常见的概念,与源(sources)意义相近,主要指托管资源的场所.许多软件都有仓库的概念,例如yum.npm.maven.Git,以及本文的主角Composer.仓库以中心化的方式托管资源,为软件的正常工作提供保障. Packagist 是Composer默认的中央仓库,PHP社区的绝大部分Composer包都托管在该网站上.Packagist提供公开的.免费的托管服务,任何人均可注册.自由发布包,无需审核.Packagist由Private Pac

  • 用 Composer构建自己的 PHP 框架之设计 MVC

    回顾 在上一篇教程中,我们使用 codingbean/macaw 这个 Composer 包构建了两条简单路由,第一条是响应 GET '/fuck' 的,另一条会 hold 住所有请求.其实对 PHP 框架来说,有了路由就有了一切.所以接下来我们要做的事情就是让 MFFC 框架更加规范,更加丰满. 这就牵扯到了 PHP 框架另外的价值:确立开发规范以便于`多人协作`,使用 ORM`.`模板引擎 等工具以`提高开发效率`. 正式开始规划文件夹 新建 MFFC/app 文件夹,在 app 中创建 c

  • PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)

    举例来说,假设我们的项目想要使用 monolog 这个日志工具,就需要在composer.json里告诉composer我们需要它: { "require": { "monolog/monolog": "1.*" } } 之后执行: php composer.phar install 好,现在安装完了,该怎么使用呢?Composer自动生成了一个autoload文件,你只需要引用它 require '/path/to/vendor/autoloa

  • windows环境下使用Composer安装ThinkPHP5

    1.环境检查,请确认你的环境已安装了Composer,Composer 是 PHP 的一个依赖管理工具,通过下面的命令来设置镜像 命令:composer config -g repo.packagist composer https://packagist.phpcomposer.com 镜像参考地址:https://pkg.phpcomposer.com/ 截图效果: 2.下载tp5框架 命令:composer create-project topthink/think=5.0.* tp5 -

  • PHPer 需要了解的 5 个 Composer 小技巧

    Composer是新一代的PHP依赖管理工具.其介绍和基本用法可以看这篇<PHP管理依赖(dependency)关系工具 Composer 安装与使用>.本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带来方便. 1. 仅更新单个库 只想更新某个特定的库,不想更新它的所有依赖,很简单: composer update foo/bar 此外,这个技巧还可以用来解决"警告信息问题".你一定见过这样的警告信息: Warning: The lock file is

  • 使用composer安装使用thinkphp6.0框架问题【视频教程】

    安装composer -vvv的参数是表示展示安装进度,测试时使用其他参数安装失败,一直卡着不动 curl -vvv https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer 先安装下git,才能clone下github上的代码 apt-get install git 在创建项目之前,要安装php的扩展和unzip命令,没有这几个扩展后面创建项目不成功 apt-get install php7

  • 用 Composer构建自己的 PHP 框架之构建路由

    上一篇中我们已经建立了一个空的 Composer 项目,本篇将讲述如何构建路由. 久负盛名的 CodeIgniter 框架是很多人的 PHP 开发入门框架,同样也是我开始学习如何从头构建一个网站的框架.在 CI 中我学到了很多,其中对 MVC 的深入理解和对框架本质的理解对我的影响最大.从使用框架是为了提高开发效率的角度来看,框架的本质就是路由. 下面我们就开始自己来构建路由,先去 GitHub 搜一下:点此查看搜索结果 推荐https://github.com/NoahBuscher/Maca

  • PHP 开发者该知道的 5 个 Composer 小技巧

    Composer 是新一代的PHP依赖管理工具.其介绍和基本用法可以看这篇<Composer PHP依赖管理的新时代>.本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带来方便. 1. 仅更新单个库 只想更新某个特定的库,不想更新它的所有依赖,很简单: composer update foo/bar 此外,这个技巧还可以用来解决"警告信息问题".你一定见过这样的警告信息: Warning: The lock file is not up to date wi

  • 用 Composer构建自己的 PHP 框架之使用 ORM

    回顾 经过前三篇文章 基础准备 . 构建路由 和 设计 MVC ,我们已经得到了一个结构比较完整的 MVC 架构的 PHP 微框架,但是距离一个真正能够上手使用的框架还差一样东西: 数据库封装 ,本篇就将讲述如何集成一个 ORM Composer 包 . 本篇是本系列最后一篇,接下来我可能会以 让我们开了又开的 Composer 包 为系列标题分享一些体验和感悟,将主要发表在本站上. 正文 我们选择 Laravel 的 illuminate/database 作为我们的 ORM 包.我试用了几个

  • 用 Composer构建自己的 PHP 框架之基础准备

    『Composer 一统天下的时代已经到来!』 --白岩松 "一个时代结束了,另一个时代开始了." Framework Interoperability Group(框架可互用性小组),简称 FIG,成立于 2009 年.FIG 最初由几位知名 PHP 框架开发者发起,在吸纳了许多优秀的大脑和强健的体魄后,提出了PSR-0 到 PSR-4 五套 PHP 非官方规范: 1. PSR-0 (Autoloading Standard) 自动加载标准 2. PSR-1 (Basic Codin

随机推荐