每当我尝试输入我的phpMyAdmin时,它都会给我这个错误:
The mbstring extension is missing. Please check your PHP configuration.
我已经在互联网上寻找修复,但我发现的所有错误都与我的相似,但不一样,或完全相同,但没有给出修复 .
我也在使用Windows .
在Centos我安装了一个php扩展 . 我这样做:
yum install php-mbstring
在某些时候我也遇到了同样的问题 . 我试过替换 .dll 文件,但没有结果 . 经过一些调试后我找到了解决方案 .
.dll
我在 php.ini 文件中有这个:
php.ini
extension_dir = "ext"
而且我得到 mbstring extension missing 错误 . 所以我尝试为扩展目录添加完整路径,它对我有用 . 喜欢:
mbstring extension missing
extension_dir = "C:\php\ext"
希望这会有所帮助 .
干杯,
检查php安装根目录下的php.ini文件 . 在配置的扩展部分,您应该找到:
;extension=php_mbstring.dll
删除前导';'取消注释并启用扩展,使其看起来像这样:
extension=php_mbstring.dll
重启你的apache它应该工作 .
编辑:我刚刚读到您已经在使用虚拟主机 . 您的webhost是否有可以设置php变量等的界面?或者您可以编辑.ini文件?
如果不是,您可能被迫与webhost通话并要求他们启用该特定扩展 .
我的情况是这样的
奇怪的是,我注意到WAMP使用的php.ini文件不是php目录中的那个,而是引用bin目录中的php.ini文件...我将我的php.ini文件复制到wamp \ bin \ apache \ apache2.4.17 \ bin目录,重新启动wamp服务,PHPMyadmin关闭并运行...
谢谢,我解决了这个问题
在Ubuntu Server中我安装了一个php扩展 . 我这样做:
sudo apt-get install php-mbstring
这个问题的另一个原因是Php版本 . 当我将正在运行的PHP版本更改为7.0.0时,问题已经消失 .
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) restart apache2
使用xampp,这将工作(php7已被解压缩到xampp \ php目录):
在php.ini中进行以下更改:
; extension = php_mbstring.dll
; extension = 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
而已 .
sudo apt-get install php-mbstring sudo service apache restart
然后删除;从您的php.ini文件:
如果它仍然无法正常工作..删除你的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
希望能帮助到你 . 它对我做了:)
我以前在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 .
在使用Apache 2.4.17和php5.6.17安装WAMP 3后,我试着从wampserver(托盘中的绿色图标)查看php.ini . 它找不到它 . 我将php.5.6.15目录中的php.ini复制到了apache2.4.17 \ bin \目录,phpmyadmin工作正常,没有丢失mbstring
我通过这种方式解决了我的问题:编辑 php.ini 文件:
将 extension_dir = "ext" 更改为 extension_dir = "D:\php\ext" (请为扩展目录编写您自己的完整路径)
将 ;extension=php_mbstring.dll 更改为 extension=php_mbstring.dll (删除";")
然后只需保存您的php.ini文件并将其复制到您的Windows目录 . (“C:\ Windows”)
重启apache服务器 .
以上是我的解决方案,希望它对你有用 .
解决了它 .
我尝试了上面的所有解决方案,但它仍然无法正常工作 . 我目前正在使用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”文件 .
希望这有帮助 .
我刚刚在Windows 10上安装了WAMP 3并遇到了这个问题 .
我不得不去 C:\wamp64\bin\php\php7.0.0\ 并将 php.ini 文件复制到 C:\wamp64\bin\apache\apache2.4.17\bin\
C:\wamp64\bin\php\php7.0.0\
C:\wamp64\bin\apache\apache2.4.17\bin\
然后我重新启动了WAMP,最终能够访问我的phpMyAdmin文件 .
注意:这可能不是正确的方法,因为现在有2个php.ini文件 . Apache文件中可能有一个指向php.ini文件的设置,但我还没有看到 . 如果我找到它,我会更新 .
在较新版本的PHP中,"extension_dir" is not initially enabled .
在php的目录中尝试更改配置文件的扩展名(php.ini-development - 此文件的默认值) . 我将其更改为php.ini并且phpmyadmin已经工作 .
程序无法启动,因为您的计算机缺少 php_mbstring.dll . 尝试解决它 .
php_mbstring.dll
我使用appserver到localhost和我的服务器: C:/AppServ/www/dvd2/variables.php
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
要在Linux上解决此问题,您需要使用 --enable-mbstring 标志重新编译PHP .
--enable-mbstring
如果您刚刚安装了phpmyadmin软件包但尚未重新启动apache,则可能会收到此错误消息;尝试重启apache .
请在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
这将有助于解决 .
您安装的phpadmin版本与apache版本不兼容 . 安装兼容版本,你应该没问题
我最近在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相应 . 两个可能的解决方案:
将DLL子扩展从ext子目录复制到PHP根目录,或
编辑php.ini文件以从ext子目录调用所有DLL扩展 .
我选择了更容易的第一个和phpMyAdmin现在工作正常 .
根据您的操作系统,您可能需要安装其他数据包,例如SLES Linux中的php5-mbstring .
我检查phpinfo()并寻找这一行:
Configuration File (php.ini) Path C:\Windows
我将php.ini从C:\ xampp \ php复制到该文件夹,它适用于我 .
我有同样的问题,上面的解决方案对我不起作用 .
我做的是卸载wamp并注销Skype并重新安装wamp .
然后它运作了 . 我认为wamp和Skype使用的端口是一样的 .
希望这个输入会有所帮助 .
干杯:)
我的解决方案:将php.ini中的php.ini快捷方式复制到apache-dir . 这样你就可以在正确的地方引用1个文件 . 这解决了问题(至少在我的情况下) .
只需将php.ini文件从C:\ wamp \ bin \ apache \ apache2.4.17 \ bin复制到C:\ wamp \ bin \ apache \ apache2.4.17 \ bin,然后再次重启apache服务器..它将正常工作 .
我的解决方案
我之前安装了wamp x32,需要删除然后安装x64,收到相同的消息“缺少mbstring扩展名 . 请检查你的PHP配置 . ” .
在php.ini上,对wamp的所有引用,例如extension_dir =都指向“C:/ Program Files / Wamp / ... ". Check all paths, the correct for me is " C:/ Wamp64 /” . 重启服务,现在好了 .
对我来说,使用WAMP 3.0.0,问题是WAMP在我的PC上的以下目录中寻找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 .
在我的PC上的'C:\ wamp64 \ bin \ php'目录中,有PHP 5.6.16和7.0.0的子目录 . 这两个都有php.ini文件 . 另一种解决方案是将其中一个文件复制到我PC上的“C:\ wamp64 \ bin \ apache \ apache2.4.17 \ bin”目录中 .
30 回答
在Centos我安装了一个php扩展 . 我这样做:
在某些时候我也遇到了同样的问题 . 我试过替换
.dll
文件,但没有结果 . 经过一些调试后我找到了解决方案 .我在
php.ini
文件中有这个:extension_dir = "ext"
而且我得到
mbstring extension missing
错误 . 所以我尝试为扩展目录添加完整路径,它对我有用 . 喜欢:extension_dir = "C:\php\ext"
希望这会有所帮助 .
干杯,
检查php安装根目录下的php.ini文件 . 在配置的扩展部分,您应该找到:
删除前导';'取消注释并启用扩展,使其看起来像这样:
重启你的apache它应该工作 .
编辑:我刚刚读到您已经在使用虚拟主机 . 您的webhost是否有可以设置php变量等的界面?或者您可以编辑.ini文件?
如果不是,您可能被迫与webhost通话并要求他们启用该特定扩展 .
我的情况是这样的
谢谢,我解决了这个问题
在Ubuntu Server中我安装了一个php扩展 . 我这样做:
这个问题的另一个原因是Php版本 . 当我将正在运行的PHP版本更改为7.0.0时,问题已经消失 .
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) restart apache2
使用xampp,这将工作(php7已被解压缩到xampp \ php目录):
在php.ini中进行以下更改:
完整路径,例如:
另外,更改httpd-xampp.conf中的xampp-settings:
至
至
至
而已 .
然后删除;从您的php.ini文件:
至
如果它仍然无法正常工作..删除你的php设置,而不从phpmyadmin中删除数据库 . 重新安装它 .
注意:*如果要删除所有内容,请提及您需要的内容 .
然后安装所需的php版本的php和模块 . 这里,php 7.1:
重启你的apache并检查php版本 .
完成所有这些后,执行以下命令强制启用mbstring并重启apache .
希望能帮助到你 . 它对我做了:)
我以前在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 .
在使用Apache 2.4.17和php5.6.17安装WAMP 3后,我试着从wampserver(托盘中的绿色图标)查看php.ini . 它找不到它 . 我将php.5.6.15目录中的php.ini复制到了apache2.4.17 \ bin \目录,phpmyadmin工作正常,没有丢失mbstring
我通过这种方式解决了我的问题:编辑 php.ini 文件:
将 extension_dir = "ext" 更改为 extension_dir = "D:\php\ext" (请为扩展目录编写您自己的完整路径)
将 ;extension=php_mbstring.dll 更改为 extension=php_mbstring.dll (删除";")
然后只需保存您的php.ini文件并将其复制到您的Windows目录 . (“C:\ Windows”)
重启apache服务器 .
以上是我的解决方案,希望它对你有用 .
解决了它 .
我尝试了上面的所有解决方案,但它仍然无法正常工作 . 我目前正在使用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”文件 .
希望这有帮助 .
我刚刚在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文件的设置,但我还没有看到 . 如果我找到它,我会更新 .
奇怪的是,我注意到WAMP使用的php.ini文件不是php目录中的那个,而是引用bin目录中的php.ini文件...我将我的php.ini文件复制到wamp \ bin \ apache \ apache2.4.17 \ bin目录,重新启动wamp服务,PHPMyadmin关闭并运行...
在较新版本的PHP中,"extension_dir" is not initially enabled .
在php的目录中尝试更改配置文件的扩展名(php.ini-development - 此文件的默认值) . 我将其更改为php.ini并且phpmyadmin已经工作 .
程序无法启动,因为您的计算机缺少
php_mbstring.dll
. 尝试解决它 .我使用appserver到localhost和我的服务器:
C:/AppServ/www/dvd2/variables.php
要在Linux上解决此问题,您需要使用
--enable-mbstring
标志重新编译PHP .如果您刚刚安装了phpmyadmin软件包但尚未重新启动apache,则可能会收到此错误消息;尝试重启apache .
请在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
这将有助于解决 .
您安装的phpadmin版本与apache版本不兼容 . 安装兼容版本,你应该没问题
我最近在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相应 . 两个可能的解决方案:
将DLL子扩展从ext子目录复制到PHP根目录,或
编辑php.ini文件以从ext子目录调用所有DLL扩展 .
我选择了更容易的第一个和phpMyAdmin现在工作正常 .
根据您的操作系统,您可能需要安装其他数据包,例如SLES Linux中的php5-mbstring .
我检查phpinfo()并寻找这一行:
我将php.ini从C:\ xampp \ php复制到该文件夹,它适用于我 .
我有同样的问题,上面的解决方案对我不起作用 .
我做的是卸载wamp并注销Skype并重新安装wamp .
然后它运作了 . 我认为wamp和Skype使用的端口是一样的 .
希望这个输入会有所帮助 .
干杯:)
我的解决方案:将php.ini中的php.ini快捷方式复制到apache-dir . 这样你就可以在正确的地方引用1个文件 . 这解决了问题(至少在我的情况下) .
只需将php.ini文件从C:\ wamp \ bin \ apache \ apache2.4.17 \ bin复制到C:\ wamp \ bin \ apache \ apache2.4.17 \ bin,然后再次重启apache服务器..它将正常工作 .
我的解决方案
我之前安装了wamp x32,需要删除然后安装x64,收到相同的消息“缺少mbstring扩展名 . 请检查你的PHP配置 . ” .
在php.ini上,对wamp的所有引用,例如extension_dir =都指向“C:/ Program Files / Wamp / ... ". Check all paths, the correct for me is " C:/ Wamp64 /” . 重启服务,现在好了 .
我对这个问题的表现
对我来说,使用WAMP 3.0.0,问题是WAMP在我的PC上的以下目录中寻找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 .
替代解决方案
在我的PC上的'C:\ wamp64 \ bin \ php'目录中,有PHP 5.6.16和7.0.0的子目录 . 这两个都有php.ini文件 . 另一种解决方案是将其中一个文件复制到我PC上的“C:\ wamp64 \ bin \ apache \ apache2.4.17 \ bin”目录中 .