Php mb_检测_编码();缺少mysqli扩展

Php mb_检测_编码();缺少mysqli扩展,php,phpmyadmin,Php,Phpmyadmin,我安装了Apache2.4.9,PHP5.4.30和MySQL 5.7运行良好。当我试图运行phpMyAdmin4.2.5时,我出现了一个错误 致命错误:调用未定义的函数mb_detect_encoding() 我在php.ini中取消了mbstring的注释,重新启动了服务器、计算机、我的妻子和我的狗。结果是一样的: 未定义函数mb_detect_encoding() 我将PHP重新安装到5.3.28版本。不可能。我将phpMyAdmin重新安装到3.5.6版本(在我的旧计算机上运行良好)。现

我安装了Apache2.4.9,PHP5.4.30和MySQL 5.7运行良好。当我试图运行phpMyAdmin4.2.5时,我出现了一个错误

致命错误:调用未定义的函数mb_detect_encoding()

我在
php.ini
中取消了mbstring的注释,重新启动了服务器、计算机、我的妻子和我的狗。结果是一样的:

未定义函数mb_detect_encoding()

我将PHP重新安装到5.3.28版本。不可能。我将phpMyAdmin重新安装到3.5.6版本(在我的旧计算机上运行良好)。现在我有:

phpMyAdmin-错误

缺少mysqli扩展。请检查您的电话号码 PHP配置

决议: 在httpd.config文件中,根目录被设置为反斜杠,如PHPIniDir“C:\php\”而不是普通斜杠,如PHPIniDir“C:/php/”

您可以这样说:

我在
php.ini

然后您说您在命令行中运行了以下命令:

C:\php>php-m

好的,首先是第二件事:在命令行中运行
php
,与在Apache中作为模块运行它不同。两个完全不同的东西。知道了这一点,您确定您正在编辑正确的
php.ini
文件吗

要真正了解Apache PHP模块的功能,请在web根目录中创建一个名为
phpinfo.PHP
的文件,并在其中放置
phpinfo
命令,如下所示:

<?php

phpinfo();

?>

然后通过网络浏览器加载。您应该得到安装内容的完整列表以及PHP的配置方式。在您的
php.ini
中,查找显示已加载配置文件的行,该行将准确地告诉您Apache php模块正在加载哪个
php.ini
文件。下面是我在Mac OS X上运行的MAMP上的
phpinfo
输出的屏幕截图;无论在哪个系统上运行命令,它看起来都很相似


要查看已加载模块/扩展的列表,请转到命令行并键入X:>php-m。您看到扩展名mysqli和mbstring了吗?谢谢您的快速回答。好的,我可以看到您提到的这两个扩展名实际上已经加载。尝试编写一个小脚本,调用mb_*函数族中的函数,并调用mysql_*函数,查看错误日志以了解更多信息details@andreas这些扩展来自CLI PHP,而不是PHP的Apahce web服务器模块。两个完全不同的东西。调用
phpinfo()
并检查顶部部分中实际使用的
php.ini
文件-很可能您编辑了错误的文件。加载的配置文件“C:\Windows\php.ini”。但是在C:\windows\中没有php.ini文件。我将php.ini文件从我的php目录复制到C:\windows,但它没有帮助。如何更改加载的配置文件的路径?@SergeyFrolov那么这就是问题所在。由于某种原因,您的PHP没有加载
PHP.ini
。您需要重新启动PHP以获取
PHP.ini
。如果您有更多问题,请阅读此处的安装说明。但是我不能再帮你了。这对于您的设置来说太具体了,我们任何人都无法深入解决。祝你好运
<?php

phpinfo();

?>