每当我尝试输入我的phpMyAdmin时,它都会给我这个错误:
The mbstring extension is missing. Please check your PHP configuration.
我已经在互联网上寻找修复,但我发现的所有错误都与我的相似,但不一样,或完全相同,但没有给出修复。
我也在使用Windows。
答案 0 :(得分:29)
在Centos中我安装了一个php扩展。 我是这样做的:
yum install php-mbstring
答案 1 :(得分:26)
在某些时候我也遇到了同样的问题。我试过替换.dll
文件,但没有结果。经过一些调试后,我找到了解决方案。
我在php.ini
文件中有这个:
extension_dir = "ext"
我收到mbstring extension missing
错误。所以我尝试为扩展目录添加完整路径,它对我有用。像:
extension_dir = "C:\php\ext"
希望这会有所帮助。
干杯,
答案 2 :(得分:15)
检查php安装根目录下的php.ini文件。在配置的扩展部分,您应该找到:
;extension=php_mbstring.dll
删除前导';'取消注释并启用扩展程序,如下所示:
extension=php_mbstring.dll
重新启动你的apache它应该可以工作。
编辑:我刚刚读到您已经在使用虚拟主机。您的webhost是否有可以设置php变量等的界面?或者您可以编辑.ini文件?
如果不是,您可能被迫与webhost通话并要求他们启用该特定扩展。
答案 3 :(得分:10)
我的情况就像这样
奇怪的是,我注意到WAMP使用的php.ini文件不是 php目录中的那个,而是引用了php.ini bin目录中的文件...我将我的php.ini文件复制到 wamp \ bin \ apache \ apache2.4.17 \ bin目录,重新启动wamp 服务和PHPMyadmin已关闭并运行...
谢谢我解决了问题
答案 4 :(得分:9)
答案 5 :(得分:8)
在Ubuntu Server中我安装了一个php扩展。 我是这样做的:
sudo apt-get install php-mbstring
答案 6 :(得分:4)
安装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和模块。这里,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
希望它有所帮助。 它对我做了:)
答案 7 :(得分:3)
使用xampp,这将有效(php7已被解压缩到xampp \ php目录):
在php.ini中进行以下更改:
;延长=中php_mbstring.dll
;延长= php_mysqli.dll
extension_dir =“ext”
到完整路径,例如:
extension_dir =“C:\ xammp \ php \ ext”
另外,更改httpd-xampp.conf中的xampp-settings:
LoadFile“C:/xampp/php/php5ts.dll”
到
LoadFile“C:/xampp/php/php7ts.dll”
LoadModule php5_module“C:/xampp/php/php5apache2_4.dll”
到
LoadModule php7_module“C:/xampp/php/php7apache2_4.dll”
IfModule php5_module
到
IfModule php7_module
就是这样。
答案 8 :(得分:3)
Ubuntu 15.10
1) sudo nano /etc/php/7.0/apache2/php.ini
uncommited extension = php_mbstring.dll
2) sudo apt-get install php7.0-mbstring
3)重启apache2
答案 9 :(得分: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。
答案 10 :(得分:2)
用Apache 2.4.17和php5.6.17安装WAMP 3后,我试着从wampserver(托盘中的绿色图标)查看php.ini。 它找不到它。 我将php.5.6.15目录中的php.ini复制到了apache2.4.17 \ bin \目录 和phpmyadmin工作正常,没有错过mbstring
答案 11 :(得分:2)
我通过这种方式解决了我的问题: 编辑 php.ini 文件:
以上是我的解决方案,希望它适用于你。
答案 12 :(得分: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文件的设置,但我还没有看到。如果我找到它,我会更新。
答案 13 :(得分:2)
解决了它。
我尝试了上面的所有解决方案,但它仍然无效。我目前正在使用WAMP来启动mysql服务器。当我尝试用WAMP面板打开“php.ini”文件时,它说它不存在并要求我在该位置创建一个新的“php.ini”,“C:\ wamp \ bin \ apache \ apache2.4.17 \ bin”中。一旦我创建了这个新的“php.ini”文件,我找到了路径“C:\ wamp \ bin \ php \ php5.6.15”中的现有“php.ini”文件,并克隆了它。然后我将克隆粘贴到上一个路径中,它要求我创建“php.ini”文件。
希望这会有所帮助。
答案 14 :(得分:1)
在较新版本的PHP中,"extension_dir" is not initially enabled。
答案 15 :(得分:1)
奇怪的是,我注意到WAMP使用的php.ini文件并不是php目录中的那个,而是在bin目录中引用了一个php.ini文件...我复制了我的php。 ini文件到wamp \ bin \ apache \ apache2.4.17 \ bin目录,重新启动wamp服务,PHPMyadmin关闭并运行...
答案 16 :(得分:0)
我的解决方案:
我之前安装了wamp x32,需要删除然后安装x64,收到相同的消息" 缺少mbstring扩展名。请检查您的PHP配置。"。
在php.ini上,对wamp的所有引用,例如extension_dir =都指向" C:/ Program Files / Wamp /..."。检查所有路径,对我来说是正确的" C:/ Wamp64 / "。重启服务,现在就可以了。
答案 17 :(得分:0)
将php.ini文件从C:\ wamp \ bin \ apache \ apache2.4.17 \ bin复制到C:\ wamp \ bin \ apache \ apache2.4.17 \ bin,然后再次重启apache服务器.. 它会正常工作。
答案 18 :(得分:0)
安装过程将phpMyAdmin Apache配置文件添加到/ etc / apache2 / conf-enabled /目录中,在该目录中将自动读取该文件。唯一需要做的就是显式启用mbstring PHP扩展,因为有时您忘记启用mbstring模式,所以只需键入以下命令即可启用mbstring模式...
sudo phpenmod mbstring
然后,重新启动Apache以使您的更改被识别:
sudo systemctl restart apache2
答案 19 :(得分:0)
我的解决方案:将php.ini中的php.ini快捷方式复制到apache-dir。这样你就可以在正确的地方引用1个文件。这解决了问题(至少在我的情况下)。
答案 20 :(得分:0)
我遇到了同样的问题,上述解决方案对我没用。
我所做的是卸下wamp并注销Skype并重新安装wamp。
然后它成功了。我认为wamp和Skype使用的端口是一样的。
希望此输入有所帮助。
干杯:)
答案 21 :(得分:0)
我检查phpinfo()并寻找这一行:
Configuration File (php.ini) Path C:\Windows
我将php.ini从C:\ xampp \ php复制到该文件夹,它对我有用。
答案 22 :(得分:0)
根据您的操作系统,您可能需要安装其他数据包,例如SLES Linux中的php5-mbstring。
答案 23 :(得分: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相应。所以有两种可能的解决方案:
我首先选择了更简单的方法,现在phpMyAdmin工作正常。
答案 24 :(得分:0)
您安装的phpadmin版本与apache版本不兼容。安装兼容版本,你应该没问题
答案 25 :(得分: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
这将有助于解决。
答案 26 :(得分:0)
如果您刚刚安装了phpmyadmin软件包但尚未重新启动apache,则可能会收到此错误消息;尝试重新启动apache。
答案 27 :(得分:0)
要在Linux上解决此问题,您需要使用--enable-mbstring
标志重新编译PHP。
答案 28 :(得分: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
答案 29 :(得分:0)
在php的目录中尝试更改配置文件的扩展名(php.ini-development - 此文件的默认值)。我将其更改为php.ini并且phpmyadmin已经工作。
答案 30 :(得分:-1)
对我来说,使用WAMP 3.0.0,问题是WAMP在我的电脑上的以下目录中寻找php.ini:C:\ wamp64 \ bin \ apache \ apache2.4.17 \ bin
但是,没有选择PHP的默认版本的文件(PHP 5.6.16)。我通过左键单击WAMP通知图标,选择' PHP'选择' Version',然后选择' 7.0.0'来改为PHP 7.0.0。
在' C:\ wamp64 \ bin \ php'在我的PC上的目录中,有PHP 5.6.16和7.0.0的子目录。这两个都有php.ini文件。另一种解决方案是将其中一个文件复制到' C:\ wamp64 \ bin \ apache \ apache2.4.17 \ bin'我电脑上的目录。