I’am getting error when i login to phpmyadmin
Deprecation Notice in ./libraries/classes/Di/ReflectorItem.php#82
Method ReflectionParameter::getClass() is deprecated
Backtrace
./libraries/classes/Di/ReflectorItem.php#50: PhpMyAdminDiReflectorItem->_resolveArgs(
array,
array,
)
./libraries/classes/Di/FactoryItem.php#27: PhpMyAdminDiReflectorItem->invoke(array)
./libraries/classes/Di/Container.php#62: PhpMyAdminDiFactoryItem->get(array)
./libraries/classes/Di/AliasItem.php#44: PhpMyAdminDiContainer->get(
string ‘PhpMyAdminControllersDatabaseDatabaseStructureController’,
array,
)
./libraries/classes/Di/Container.php#62: PhpMyAdminDiAliasItem->get(array)
./db_structure.php#35: PhpMyAdminDiContainer->get(
string ‘DatabaseStructureController’,
array,
)
5
Answers
This is most likely caused by using PHP 8 and PHPMyAdmin < v5 either upgrade you PHPMyAdmin to 5.0 or higher or downgrade your PHP to 7
You can also disable notifications and warnings adding this line to config.inc.php:
Source: PMA Docs
Because 5.0 series is ended and 5.1 will be out next this will not be fixed.
5.1 has a new DI system and the classes mentioned in the output do not exist anymore.
But you can download the latest version in development (phpMyAdmin 5.1+snapshot) and the DI errors should be gone 🙂
https://github.com/phpmyadmin/phpmyadmin/issues/16268
I had the same error.
phpMyAdmin 5.1.3 uses PHP 7.1 and phpMyAdmin 4.9.10 uses PHP 5.5 to 7.4
You can see that info here:
https://www.phpmyadmin.net/downloads/
I have installed 4.9.5 with apache, so what I did was install PHP7.4 and php7.4-fpm, then I modified the phpMyAdmin apache config file to indicate that it should work with PHP7.4
Install php7.4-fpm:
Modify phpMyAdmin apache config file:
After
Alias /phpmyadmin /usr/share/phpmyadmin
paste:You can restart apache again and that’s it. Good luck!
I’ve got a WAMPSERVER installed and what cleared those notices for me was updating phpmyadmin to 5.1.3 that supported PHP 8