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

admin3年前PHP教程66

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

错误问题一

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

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

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

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

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

错误问题二

The “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 packagist.phpcomposer

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

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

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

php之深入理解架构布局讲解

本文基于《php 内核剖析》与 《php7底层设计与源码实现》所记笔记。对php内核的深入理解有助于我们对php的整体认识,对于业务层初期发展我们可以只了解基本语言的逻辑就可以写出符合业务的代码,但是...

详解PHP八大设计模式

PHP命名空间可以更好地组织代码,与Java中的包类似。Test1.php<?phpnamespace Test1;//命名空间Test1function test(){echo __FILE_...

GPU服务器的使用场景?江西GPU服务器租用地址是多少?

服务器具备很强的现实意义,我们每天都在无形中跟服务器打交道。针对用途不同,服务器可分为诸多类型。为增加大家对服务器的了解程度,本文将对GPU服务器予以介绍。通过本文,您将对GPU服务器有所认识。GPU...

如何选择合适的香港多ip服务器租用

选择合适的香港多IP服务器租用服务需要考虑许多因素。以下是一些要考虑的因素:IP地址数量:您需要确定您的应用程序需要多少IP地址,并选择服务器提供商提供的IP地址数量。带宽:您需要考虑您的应用程序需要...

详解php微信小程序消息推送配置

第一步官网下载对应版本的cryptoDemo下载地址:wximg.gtimg/shake_tv/mpwiki/cryptoDemo.zip第二步创建检查文件wxcheck.php这个文件名可以随便命名...

常见的5个PHP编码小陋习以及优化实例讲解

在做过大量的代码审查后,我经常看到一些重复的错误,以下是纠正这些错误的方法。在循环之前测试数组是否为空$items = [];// ...if (count($items) > 0) {&nbs...