作曲家-您的系统缺少所请求的PHP扩展名mbstring [关闭]


99

我最近尝试通过Composer安装软件包,但是遇到了一个错误,the requested PHP extension mbstring is missing from your system. 我从中删除了分号php.ini,但仍然无法正常工作。我该怎么办?


我在php / ext目录中。
Jozef Cipa

@joci,请参阅此答案
Pedro Pinheiro

您正在使用什么操作系统(linux / mac / windows)?您正在使用哪个Web服务器(iis / nginx / apache / etc)?自更新php.ini文件以来,您是否已重新启动Web服务器软件?
乔纳森·库恩

我正在使用Windows和Apache服务器(MAMP)。是的,我重新启动了服务器。
Jozef Cipa 2015年

mbstring设置中没有注释php.ini
Nikolaj Sarry 2015年

Answers:


226
sudo apt-get install php-mbstring

# if your are using php 7.1
sudo apt-get install php7.1-mbstring

# if your are using php 7.2
sudo apt-get install php7.2-mbstring

15
这可行,但是我必须安装特定的php版本:sudo apt-get install php5.6-mbstring。搜索apt-cache search mbstring以查看哪些版本可用于您的系统。
比约恩

10
apt-get install php7.1-mbstring为我工作
Danon

1
如果运行此命令返回的错误Unable to locate package php-mbstring,请尝试sudo apt-get update先运行。
马特

2
当然,apt-get install php7.2-mbstring
Mike Bird

1
确认工作(命令和apt-get安装php7.2-MBSTRING)在Ubuntu PHP的7.2.24
数据视图

21
  1. 找你的 php.ini
  2. 确保extension_dir=C:\path\to\server\php\ext已设置指令并调整路径(设置您的PHP扩展目录)
  3. 确保extension=php_mbstring.dll设置了指令(未注释)

如果这不起作用并且缺少php_mbstring.dll文件,则该堆栈的PHP安装被破坏了。


我重新安装了服务器,但是什么都没有改变。
Jozef Cipa 2015年

真奇怪 也许在MAMP寻求支持,或者简单地切换堆栈。XAMPP,WPN-XM。
Jens A. Koch 2015年

我终于解决了。我设置了PHPRC变量,并在php.ini中取消注释zend_extension = php_opcache.dll。
Jozef Cipa

而且我还安装了C ++可再发行文件和DirectX。我不知道问题出在哪里,但现在可以正常使用了。
Jozef Cipa

在我的情况下,php.ini文件中的扩展名php_mbstring没有一行。所以我使用sudo apt-get install php7.3-mbstring安装了它。我的php版本是7.3,它的作用就像魅力。
astrosixer

7

对于php 7.1

sudo apt-get install php7.1-mbstring

干杯!


3
这对我不起作用,您使用的是哪个回购协议?
Jr Jimnz '18

在Ubuntu 18上,它的工作原理如上所述。
大卫

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.