47

每当我尝试输入我的 phpMyAdmin 时,它都会给我这个错误:

The mbstring extension is missing. Please check your PHP configuration.

我在整个互联网上寻找修复程序,但我发现的所有错误都与我的相似,但不一样,或者完全相同但没有给出修复程序。

我也在使用 Windows。

4

31 回答 31

29

在 Centos 中,我安装了一个 php 扩展。我这样做了:

yum install php-mbstring
于 2013-12-12T18:45:16.537 回答
26

以前我也有同样的问题。我尝试替换.dll文件但没有结果。经过一些调试,我找到了解决方案。

我的php.ini文件中有这个:

extension_dir = "ext"

我得到了mbstring extension missing错误。所以我尝试为扩展目录放置完整路径,它对我有用。喜欢:

extension_dir = "C:\php\ext"

希望这会有所帮助。

干杯,

于 2013-09-17T11:47:31.277 回答
15

检查您的 php.ini 文件在您的 php 安装的根目录中。在配置的扩展部分中,您应该找到:

;extension=php_mbstring.dll

删除前导 ';' 取消注释并启用扩展,使其看起来像这样:

extension=php_mbstring.dll

重新启动您的apache,它应该可以工作。

编辑:我刚刚读到您已经在使用虚拟主机。您的虚拟主机是否有一个界面,您可以在其中设置 php 变量等?还是您可以编辑的 .ini 文件?

如果不是,您可能会被迫与虚拟主机交谈并要求他们启用该特定扩展。

于 2013-09-03T18:56:44.873 回答
10

我的情况是这样的

奇怪的是,我注意到 WAMP 使用的 php.ini 文件不是 php 目录中的文件,而是引用 bin 目录中的 php.ini 文件...我将 php.ini 文件复制到 wamp\ bin\apache\apache2.4.17\bin 目录,重新启动 wamp 服务,PHPMyadmin 已关闭并正在运行...

谢谢我解决了问题

于 2016-03-28T01:14:22.593 回答
10

在 Ubuntu Server 中,我安装了一个 php 扩展。我这样做了:

sudo apt-get install php-mbstring
于 2016-05-02T11:54:53.167 回答
9

这个问题的另一个原因是 PHP 版本。当我将正在运行的 PHP 版本更改为 7.0.0 时,问题就消失了。

在此处输入图像描述

于 2016-05-16T08:14:39.763 回答
4
  1. 安装 mbstring 并重新启动你的 apache:

    sudo apt-get install php-mbstring
    sudo service apache restart
    

然后删除;从您的 php.ini 文件中:

;extension=php_mbstring.dll

extension=php_mbstring.dll

如果它仍然不起作用..删除您的 php 设置,而不从您的 phpmyadmin 中删除数据库。重新安装它。

注意:* 如果您想全部删除,请全部提及您需要的。

sudo apt-get remove php* 

然后安装你需要的php版本的php和modules。在这里,php 7.1:

sudo apt-get install php7.1 php7.1-cli php7.1-common libapache2-mod-php7.1 php7.1-mysql php7.1-fpm php7.1-curl php7.1-gd php7.1-bz2 php7.1-mcrypt php7.1-json php7.1-tidy php7.1-mbstring php-redis php-memcached

重新启动您的 apache 并检查 php 版本。

sudo service apache restart
php -v

完成所有这些后,执行以下命令以强制启用 mbstring 并重新启动您的 apache。

sudo phpenmod mbstring
sudo service apache restart

希望能帮助到你。它对我有用:)

于 2017-07-06T08:42:33.550 回答
4

Ubuntu 15.10

1)须藤纳米/etc/php/7.0/apache2/php.ini

未提交的扩展=php_mbstring.dll

2) sudo apt-get install php7.0-mbstring

3)重启apache2

于 2016-04-05T11:42:57.223 回答
3

使用 xampp,这将起作用(php7 已被提取到 xampp\php 目录):

在 php.ini 中进行以下更改:

  1. 取消注释(删除;)

;扩展=php_mbstring.dll

  1. 取消注释(删除;)

;扩展=php_mysqli.dll

  1. 设置扩展目录的路径

extension_dir = "分机"

到完整路径,例如:

extension_dir = "C:\xammp\php\ext"

另外,更改 httpd-xampp.conf 中的 xampp 设置:

  1. 改变

加载文件“C:/xampp/php/php5ts.dll”

加载文件“C:/xampp/php/php7ts.dll”

  1. 改变

LoadModule php5_module "C:/xampp/php/php5apache2_4.dll"

LoadModule php7_module "C:/xampp/php/php7apache2_4.dll"

  1. 改变所有外观(3次)

IfModule php5_module

IfModule php7_module

而已。

于 2016-10-20T12:14:32.517 回答
2

我过去在 Windows 机器上使用 MAMP 时遇到过这个问题。

打开 MAMP 起始页并转到您当前的 PHP 配置 (phpinfo)。检查配置文件 (php.ini) 路径。

我的设置为 C:\Windows,当然我没有 PHP.ini 文件。

要么将 php.ini 路径更改为 C:\MAMP\conf\php5.6.8(或您的 php 版本 conf 路径),要么将 php.ini 复制到 c:\windows。

于 2015-06-08T18:57:41.330 回答
2

解决了。

我尝试了上述所有解决方案,但仍然无效。我目前正在使用 WAMP 启动 mysql 服务器。当我尝试使用 WAMP 面板打开“php.ini”文件时,它说它不存在并要求我在“C:\wamp\bin\apache\”位置创建一个新的“php.ini” apache2.4.17\bin”。一旦我创建了这个新的“php.ini”文件,我就找到了路径“C:\wamp\bin\php\php5.6.15”中现有的“php.ini”文件,并克隆了它。然后我将克隆粘贴到之前它要求我创建“php.ini”文件的路径中。

希望这有帮助。

于 2016-03-06T07:24:52.430 回答
2

在使用 Apache 2.4.17 和 php5.6.17 安装 WAMP 3 后,我尝试从 wampserver(托盘中的绿色图标)查看 php.ini。它没有找到它。我将 php.ini 从 php.5.6.15 目录复制到 apache2.4.17\bin\ 目录,phpmyadmin 工作正常,没有丢失 mbstring

于 2015-11-22T16:40:38.447 回答
2

我已经通过这种方式解决了我的问题:编辑php.ini文件:

  1. extension_dir = "ext" 改为extension_dir = "D:\php\ext"(扩展目录请填写自己的完整路径)</li>
  2. ;extension=php_mbstring.dll改为extension=php_mbstring.dll(删除“;”)</li>
  3. 然后只需保存您的 php.ini 文件并将其复制到您的 Windows 目录。(“C:\Windows”)
  4. 重启apache服务器。</li>

以上是我的解决方案,希望对你有用。

于 2015-12-19T07:31:34.353 回答
2

我刚刚在 Windows 10 上安装了 WAMP 3 并遇到了这个问题。

我不得不去C:\wamp64\bin\php\php7.0.0\并将php.ini文件复制到C:\wamp64\bin\apache\apache2.4.17\bin\

然后我重新启动了 WAMP,终于能够访问我的 phpMyAdmin 文件。

注意:这可能不是正确的方法,因为现在有 2 个 php.ini 文件。Apache 文件中可能有一个指向 php.ini 文件的设置,但我还没有看到。如果我找到它,我会更新它。

于 2016-04-09T19:00:54.910 回答
1

奇怪的是,我注意到 WAMP 使用的 php.ini 文件不是 php 目录中的文件,而是引用 bin 目录中的 php.ini 文件...我将 php.ini 文件复制到 wamp\ bin\apache\apache2.4.17\bin 目录,重新启动 wamp 服务,PHPMyadmin 已关闭并正在运行...

于 2016-02-19T18:08:21.070 回答
1

在较新版本的 PHP 中,“extension_dir”最初没有启用

于 2016-04-12T21:28:32.863 回答
0

要在 Linux 上解决此问题,您需要使用--enable-mbstring标志重新编译 PHP。

于 2015-02-13T13:35:12.127 回答
0

该程序无法启动,因为php_mbstring.dll您的计算机中缺少该程序。尝试修复它。

我使用 appserver 到 localhost 和我的服务器:C:/AppServ/www/dvd2/variables.php

Mozilla/5.0 (Windows NT 6.1; rv:33.0) Gecko/20100101 Firefox/33.0
Apache/2.2.8 (Win32) PHP/5.2.6
于 2014-12-07T15:02:39.843 回答
0

在 php 的目录中尝试更改配置文件的扩展名(php.ini-development - 此文件的默认值)。我将其更改为 php.ini 并且 phpmyadmin 有效。

于 2013-11-12T05:32:07.090 回答
0

如果您刚刚安装了 phpmyadmin 软件包但尚未重新启动 apache,您可能会收到此错误消息;尝试重新启动apache。

于 2015-04-10T17:52:54.417 回答
0

请取消注释 php.ini 中的以下行

;extension=php_mbstring.dll ;extension=php_exif.dll ; Must be after mbstring as it depends on it ;extension=php_mysql.dll ;extension=php_mysqli.dll

这将有助于解决。

于 2015-05-08T03:45:13.790 回答
0

安装过程将 phpMyAdmin Apache 配置文件添加到 /etc/apache2/conf-enabled/ 目录中,自动读取该文件。您唯一需要做的就是显式启用 mbstring PHP 扩展,因为有时您忘记启用 mbstring 模式,所以只需键入以下命令即可启用 mbstring 模式...

   sudo phpenmod mbstring

之后,重新启动 Apache 以识别您的更改:

sudo systemctl restart apache2
于 2020-11-27T05:41:34.057 回答
0

只需将 php.ini 文件从 C:\wamp\bin\apache\apache2.4.17\bin 复制到 C:\wamp\bin\apache\apache2.4.17\bin 然后再次重新启动 apache 服务器 .. 它将正常工作。

于 2016-04-17T05:38:32.217 回答
0

根据您的操作系统,您可能需要安装额外的数据包,例如 SLES Linux 中的 php5-mbstring。

于 2015-11-09T17:32:18.117 回答
0

我检查 phpinfo() 并寻找这一行:

Configuration File (php.ini) Path          C:\Windows

我将 php.ini 从 C:\xampp\php 复制到该文件夹​​,它对我有用。

于 2016-01-10T04:21:51.593 回答
0

我有同样的问题,上述解决方案对我不起作用。

我所做的是卸载 wamp 并注销 Skype 并重新安装 wamp。

然后它得到了工作。我认为 wamp 和 Skype 使用的端口是相同的。

希望这个输入会有所帮助。

干杯:)

于 2016-02-03T10:02:39.197 回答
0

我的解决方案:将 php.ini 中的快捷方式从 php-directory 复制到 apache-dir。这样,您也可以在正确的位置引用 1 个文件。这解决了(至少在我的情况下)这个问题。

于 2016-03-16T10:23:16.377 回答
0

我的解决方案:

我之前安装了 wamp x32,需要删除然后安装 x64,收到相同的消息“缺少 mbstring 扩展名。请检查您的 PHP 配置。 ”。

在 php.ini 上,所有对 wamp 的引用,例如 extension_dir = 都指向“ C:/Program Files/Wamp/... ”。检查所有路径,对我来说正确的是“ C:/Wamp64/ ”。重新启动服务,现在一切正常。

于 2016-05-02T21:06:48.767 回答
0

你安装的phpadmin版本和apache的版本不兼容。安装兼容版本,你应该没问题

于 2015-08-30T19:17:07.900 回答
0

我最近在我的 Windows 8.1 操作系统上从 PHP 5.4.44 更新到 PHP 5.6.12 并收到了这个 phpMyAdmin 缺少 mbstring 错误消息。

在尝试了上述建议后,我发现 5.4.44 版将 DLL 扩展放在 PHP 根目录中,而 5.6.12 版将它们放在 PHP\ext 子目录中。
一切都很好,但不幸的是有人忘记相应地更改 php.ini。所以有两种可能的解决方案:

  1. 将 DLL 扩展从 ext 子目录复制到 PHP 根目录,或者
  2. 编辑 php.ini 文件以从 ext 子目录调用所有 DLL 扩展。

我首先选择了更简单的,现在 phpMyAdmin 可以正常工作。

于 2015-09-03T05:02:42.103 回答
-1

我对这个问题的表现

对我来说,使用 WAMP 3.0.0,问题是 WAMP 在我的 PC 上的以下目录中寻找 php.ini:C:\wamp64\bin\apache\apache2.4.17\bin

解决方案

但是,那里没有选择的默认 PHP 版本 (PHP 5.6.16) 的文件。我通过左键单击 WAMP 通知图标、选择“PHP”、选择“版本”并选择“7.0.0”更改为 PHP 7.0.0。

替代解决方案

在我 PC 上的“C:\wamp64\bin\php”目录中,有 PHP 5.6.16 和 7.0.0 的子目录。这两个都有 php.ini 文件。另一种解决方案是将其中一个文件复制到我 PC 上的“C:\wamp64\bin\apache\apache2.4.17\bin”目录中。

于 2016-05-29T03:03:22.310 回答