我刚从Xubuntu 19.10升级到20.04。这使我从php 7.3转到php 7.4.3和phpmyadmin 4.9.5+dsfg1-2。
升级之前一切都正常。现在,我可以成功地访问test php网页,并且可以显示PHP_info.php页面。但是,当我试图访问phpmyadmin时,它会引发一个记录在apache2错误日志文件中的致命错误。这里是为可读性而扩展的:
[Tue Sep 15 20:15:09.030096 2020] [php7:error] [pid 2092141] [client ###.###.###.###:53310]
PHP Fatal error: Uncaught Error:
Call to undefined function PhpMyAdmin\\mb_strpos() in /usr/share/phpmyadmin/libraries/classes/Url.php:253
Stack trace:
#0 /usr/share/phpmyadmin/libraries/classes/Url.php(206): PhpMyAdmin\\Url::getArgSeparator()
#1 /usr/share/phpmyadmin/libraries/classes/Url.php(169): PhpMyAdmin\\Url::getCommonRaw()
#2 /usr/share/phpmyadmin/libraries/classes/Core.php(749): PhpMyAdmin\\Url::getCommon()
#3 /usr/share/phpmyadmin/libraries/classes/Core.php(330): PhpMyAdmin\\Core::linkURL()
#4 /usr/share/phpmyadmin/libraries/classes/Core.php(353): PhpMyAdmin\\Core::getPHPDocLink()
#5 /usr/share/phpmyadmin/libraries/classes/Core.php(973): PhpMyAdmin\\Core::warnMissingExtension()
#6 /usr/share/phpmyadmin/libraries/common.inc.php(106): PhpMyAdmin\\Core::checkExtensions()
#7 /usr/share/phpmyadmin/index.php(27): require_once('/usr/share/phpm...')
#8 {main}
thrown in /usr/share/phpmyadmin/libraries/classes/Url.php on line 253, referer: http://<server>/html/admin.html
如何没有定义函数mb_strpos()?
关于如何解决这一问题,有什么建议吗?
发布于 2020-09-16 09:32:14
mb_strpos
不是核心PHP中的默认函数,它包含在mbstring
扩展中。您可以轻松地用sudo apt install php-mbstring
安装它。
发布于 2022-06-09 09:02:20
您需要通过在下面的代码中放置一个info.php来找出您的服务器使用的是哪个PHP:
<?php phpinfo(); ?>
然后,您需要下载这个版本的php-mbstring,例如,如果您有PHP8.0.15,那么您需要像这样安装它:
sudo apt-get install php8.0-mbstring
然后重新启动apache2服务:
sudo service apache2 restart
发布于 2021-03-27 20:24:40
我也有同样的问题,这是因为我使用php7.0-mbstring。通过安装php7.2-mbstring来修正它。
https://askubuntu.com/questions/1275461
复制相似问题