phpMyAdmin 错误调用未定义函数

Posted

技术标签:

【中文标题】phpMyAdmin 错误调用未定义函数【英文标题】:phpMyAdmin error call to undefined function 【发布时间】:2017-01-06 18:53:04 【问题描述】:

当我转到 localhost/phpmyadmin 时,我有一个白页,并且 apache2 日志中有错误:

PHP 致命错误:未捕获的错误:调用 /usr/share/phpmyadmin/libraries/core.lib.php:245 中的未定义函数 __():245\n堆栈跟踪:\n#0 /usr/share/phpmyadmin/libraries /core.lib.php(321): PMA_fatalError('[a@./url.ph...')\n#1 /usr/share/phpmyadmin/libraries/common.inc.php(298): PMA_warnMissingExtension ('json', true)\n#2 /usr/share/phpmyadmin/index.php(12): require_once('/usr/share/phpm...')\n#3 main\n 抛出/usr/share/phpmyadmin/libraries/core.lib.php 在第 245 行

我在网上搜索,发现 php-mbstring 有问题,所以我安装了它,但没有解决问题。我还完全重新安装了 php、mysql 和 phpmyadmin...

【问题讨论】:

您是否尝试将 777 权限授予 php/session 文件夹? 您使用的是哪个 phpMyAdmin 和 PHP 版本? 我遇到了同样的问题。 PhpMyAdmin 停止工作。我记得几天前我在运行sudo chmod 775 / 时犯了一个错误(我打错了)。我以为我已经用 Timeshift-restore 修复了它,但问题显然没有解决。 @OussemaAroua 建议的解决方案对我有用。 chmod 777 /var/lib/php/sessions(可以在 phpinfo() 文件中找到会话文件夹路径——查找 session.save_path) 【参考方案1】:

1) 打开文件:/usr/share/phpmyadmin/libraries/core.lib.php

2) 添加以下行而不是 224-229

  if (!function_exists('__')) 
          include_once GETTEXT_INC;
              if (defined(GETTEXT_INC)) 
                 include_once GETTEXT_INC;
                else 
                  include_once './libraries/php-gettext/gettext.inc';
               
   

【讨论】:

问题修复但有一个新问题,我在页面中出现错误:缺少 json 扩展。请检查您的 PHP 配置。

以上是关于phpMyAdmin 错误调用未定义函数的主要内容,如果未能解决你的问题,请参考以下文章

PHPmyadmin 问题 - 致命错误:未捕获错误:调用未定义函数 mb_detect_encoding()

PHPmyadmin问题 - 致命错误:未捕获错误:调用未定义函数mb_detect_encoding()

更改 PHP 版本后调用 Xampp 中未定义的函数 mb_detect_encoding() (PHPmyadmin)

致命错误:在第 177 行调用 C:\Users\Jarek\mywebsite\phpMyAdmin\libraries\php-gettext\gettext.inc 中未定义的函数 mb_det

致命错误:在第 177 行调用 C:\apache\htdocs\phpmyadmin\libraries\php-gettext\gettext.inc 中的未定义函数 mb_detect_enco

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