phpmyadmin报warning
今天打开后台phpmyadmin,发现一直弹出warning。
问题现象
Warning in ./libraries/plugin_interface.lib.php#551 count(): Parameter must be an array or an object that implements Countable
Backtrace
./libraries/display_import.lib.php#371: PMA_pluginGetOptions( string ‘Import’, array, ) ./libraries/display_import.lib.php#456: PMA_getHtmlForImportOptionsFormat(array) ./libraries/display_import.lib.php#691: PMA_getHtmlForImport( string ‘5c919e2ed6622’, string ‘database’, string ‘wordpress’, string ”, integer 2097152, array, NULL, NULL, string ”, ) ./db_import.php#43: PMA_getImportDisplay( string ‘database’, string ‘wordpress’, string ”, integer 2097152, )
原因
php新版本即php7对于非array类型不能使用count()或者sizeof().
解决方案
最简单的方案就是把参数强制类型转换成array:
sudo nano /usr/share/phpmyadmin/libraries/plugin_interface.lib.php
定位到报错的行数551,使用ctrl+_,注意同时按下shift键。
if ($options != null && count((array)$options) > 0) {
这样就解决了。