安装 Laravel 时出现 Composer 错误:缺少“mbstring”?
Posted
技术标签:
【中文标题】安装 Laravel 时出现 Composer 错误:缺少“mbstring”?【英文标题】:Composer error while installing Laravel: 'mbstring' is missing? 【发布时间】:2015-10-19 20:24:29 【问题描述】:我决定尝试 Laravel,我一直在安装,因为与 OOP php 相比它是多么乏味。
尽管如此,我试图在我的 cmd(.~/wamp/www/) 上执行“composer create-project laravel/laravel --prefer-dist”命令,它创建了 Laravel 文件夹,但给了我这个输出:
*Installing laravel/laravel (v5.1.4)
- Installing laravel/laravel (v5.1.4)
Loading from cache
Created project in C:\wamp\www\laravel
> php -r "copy('.env.example', '.env');"
Loading composer repositories with package information
Installing dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- laravel/framework v5.1.8 requires ext-mbstring * -> the requested PHP exte
nsion mbstring is missing from your system.
- laravel/framework v5.1.7 requires ext-mbstring * -> the requested PHP exte
nsion mbstring is missing from your system.
- laravel/framework v5.1.6 requires ext-mbstring * -> the requested PHP exte
nsion mbstring is missing from your system.
- laravel/framework v5.1.5 requires ext-mbstring * -> the requested PHP exte
nsion mbstring is missing from your system.
- laravel/framework v5.1.4 requires ext-mbstring * -> the requested PHP exte
nsion mbstring is missing from your system.
- laravel/framework v5.1.3 requires ext-mbstring * -> the requested PHP exte
nsion mbstring is missing from your system.
- laravel/framework v5.1.2 requires ext-mbstring * -> the requested PHP exte
nsion mbstring is missing from your system.
- laravel/framework v5.1.1 requires ext-mbstring * -> the requested PHP exte
nsion mbstring is missing from your system.
- laravel/framework v5.1.0 requires ext-mbstring * -> the requested PHP exte
nsion mbstring is missing from your system.
- Installation request for laravel/framework 5.1.* -> satisfiable by laravel
/framework[v5.1.0, v5.1.1, v5.1.2, v5.1.3, v5.1.4, v5.1.5, v5.1.6, v5.1.7, v5.1.
8].
C:\wamp\www>*
我正在使用 Windows。
我尝试安装一个新的作曲家,我尝试复制一个 laravel 目录并将其手动放置在我的 /www 中。
我已确保 WAMP 正在根据我阅读的内容使用所有模块和扩展。
我已经编辑了 php.ini 文件并在必要时去掉了分号。
现在经过一番 Google 搜索后,我迷路了。
谁能帮我解决这个问题,我将不胜感激。
提前致谢!
下面是我的 PHP.ini 文件
所以我无法粘贴整个内容,但请看这里:
http://jpst.it/AAhW
【问题讨论】:
php.ini 中有一行带有“mbstring”的行吗?被注释掉了吗?之后您是否重新启动了 WAMP? 有负载。其中一些已被注释掉,例如:';mbstring.http_input=UTF-8',但是:'extension=php_mbstring.dll' 不再被注释掉。是的,我已经多次重启 WAMP。 php_mbstring.dll 文件是否与其他扩展一起存在? 是的,我很困惑。 你能复制粘贴你的php.ini文件吗? 【参考方案1】:我遇到了同样的问题。这是解决方案。
-
转到您的 php.ini 文件。
找到扩展“extension=php_mbstring.dll”。 (ctrl+f 可能不起作用,只需在 php.ini 中找到带有扩展名的长列表)
取消注释扩展,您可以通过删除同一行中的分号来做到这一点。
保存您的 php.ini 文件。
这可能不会是您最后一次遇到这样的事情了。根据经验,请仔细阅读错误并对您的 php.ini 文件进行适当的更改。
祝你好运!
【讨论】:
在 AWS AMI linux 上,如果您正在运行 php56,则需要添加。 extension=php56_mbstring.dll 代替。每当您更改 php.ini 文件时,您还应该重新启动您的 http 服务器。在我的系统上:sudo service httpd restart @NateBunney - 你会为这个问题提供帮助吗? - ***.com/q/50423893/2034750【参考方案2】:当我尝试在我的 linux 机器上安装时出现几个错误:
-
laravel/framework v5.4.9 需要 ext-mbstring * -> 您的系统中缺少请求的 PHP 扩展 mbstring。
phpunit/phpunit 5.7.9 需要 ext-dom * -> 您的系统中缺少请求的 PHP 扩展 dom。
sudo apt-get install php-mbstring
sudo apt-get install php-dom
所以简而言之,所有的错误,如
jenssegers/mongodb v3.2.0 需要 mongodb/mongodb ^1.0.0 -> 满足 mongodb/mongodb[1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.1 .0、1.1.1、1.1.2]。 jenssegers/mongodb v3.2.1 需要 mongodb/mongodb ^1.0.0 -> 满足 mongodb/mongodb[1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.1 .0、1.1.1、1.1.2]。 jenssegers/mongodb v3.2.2 需要 mongodb/mongodb ^1.0.0 -> 满足 mongodb/mongodb[1.0.0, 1.0.1, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.1 .0、1.1.1、1.1.2]。 mongodb/mongodb 1.1.2 需要 ext-mongodb ^1.2.0 -> 您的系统中缺少请求的 PHP 扩展 mongodb。您可以简单地运行以下命令:
sudo apt-get install php-*
谢谢
【讨论】:
【参考方案3】:安装php-mbstring
使用,
sudo apt-get install php-mbstring
应该解决这个问题。
【讨论】:
以上是关于安装 Laravel 时出现 Composer 错误:缺少“mbstring”?的主要内容,如果未能解决你的问题,请参考以下文章
安装 Laravel 时出现 Composer 错误“无法解码响应:zlib_decode():数据错误”
当我为 laravel 版本 7.3.0 安装 laravel/ui 时出现错误
尝试通过 Composer 将 Laravel/Nova 更新到最新版本时出现 INVALID CREDENTIALS 错误