26/07/18

PhpMyAdmin - Correção do aviso do PHP-7.3: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"?



A versão mais recente do PHP, que ainda está em testes, PHP 7.3 alpha 4 que em breve irá passar para beta, já pode ser descarregada e muitos programadores já estão a usar e a testar.

Ver: PHP 7.3 (Alpha4) já está disponível para download.

Como é óbvio, todos os programadores usam bases de dados e o PhpMyAdmin é um dos melhores sistemas para gerir as bases de dados, sejam com servidor MySql ou MariaDB.

O que acontece é que quem está a usar a versão 7.3 do PHP e o PhpMyAdmin mais recente que neste momento se encontra na versão 4.8.2, poderá estar a visualizar uma mensagem de aviso.

Aviso do phpmyadmin: continue targeting switch is equivalent to break. Did you mean to use continue 2?

A mensagem de aviso diz:

Warning in .\libraries\classes\Config\FormDisplay.php#658
"continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"?

Backtrace

.\vendor\composer\ClassLoader.php#444: include()
.\vendor\composer\ClassLoader.php#322: Composer\Autoload\includeFile(string 'C:\xampp\phpMyAdmin\vendor\composer/../../libraries/classes\Config\FormDisplay.php')
Composer\Autoload\ClassLoader->loadClass(string 'PhpMyAdmin\Config\FormDisplay')
.\libraries\classes\Config\Forms\BaseForm.php#16: spl_autoload_call(string 'PhpMyAdmin\Config\FormDisplay')
.\vendor\composer\ClassLoader.php#444: include(.\libraries\classes\Config\Forms\BaseForm.php)
.\vendor\composer\ClassLoader.php#322: Composer\Autoload\includeFile(string 'C:\xampp\phpMyAdmin\vendor\composer/../../libraries/classes\Config\Forms\BaseForm.php')
Composer\Autoload\ClassLoader->loadClass(string 'PhpMyAdmin\Config\Forms\BaseForm')
.\libraries\classes\Config\Forms\User\FeaturesForm.php#12: spl_autoload_call(string 'PhpMyAdmin\Config\Forms\BaseForm')
.\vendor\composer\ClassLoader.php#444: include(.\libraries\classes\Config\Forms\User\FeaturesForm.php)
.\vendor\composer\ClassLoader.php#322: Composer\Autoload\includeFile(string 'C:\xampp\phpMyAdmin\vendor\composer/../../libraries/classes\Config\Forms\User\FeaturesForm.php')
Composer\Autoload\ClassLoader->loadClass(string 'PhpMyAdmin\Config\Forms\User\FeaturesForm')
.\libraries\classes\Config\Forms\BaseFormList.php#123: spl_autoload_call(string 'PhpMyAdmin\Config\Forms\User\FeaturesForm')
.\libraries\classes\UserPreferences.php#181: PhpMyAdmin\Config\Forms\BaseFormList::getFields()
.\libraries\classes\Config.php#885: PhpMyAdmin\UserPreferences->apply(array)
.\libraries\common.inc.php#453: PhpMyAdmin\Config->loadUserPreferences()
.\db_structure.php#14: require_once(.\libraries\common.inc.php)


Eu já tinha feito um post acerca disto, ver: PhpMyAdmin incompativel com PHP 7.3 ?

O problema é relativo ao comando "continue" que se encontra dentro de um "switch" e começa a confusão.

Depois de enviar uma mensagem ao sistema de bugs do php, aconselharam-me a contactar os programadores do PhpMyAdmin, pois ao que parece o problema não é do PHP, que embora esteja em testes, mas sim do phpmyadmin que tem de atualizar o código para suportar a nova versão do php.

Assim sendo, fui ao GitHub do PhpMyAdmin (https://github.com/phpmyadmin/phpmyadmin), e deixei uma mensagem para os programadores que desenvolvem este sistema.

A situação já era conhecida. Na secção "Pull Requests" (puxar pedidos), já tem lá um tópico com o problema, ou seja, na próxima versão do PhpMyAdmin que deve ser a 4.8.3, a situação já deve estar resolvida.

Como resolver/corrigir manualmente na versão atual 4.8.2 ?

Para resolver o problema é muito simples, basta ir ao ficheiro "libraries/classes/Config/FormDisplay.php" que se encontra no diretorio do phpmyadmin e alterar a linha 658 onde diz "continue" e alterar para "continue 2".

Pronto, o problema está resolvido e já pode usar o PhpMyAdmin com o PHP-7.3 à vontade e sem problemas.

Encontrou mais problemas? Não desespere, deixe um comentário no fundo desta página, nos comentários.

Gostou deste artigo de ajuda? Partilhe com os seus amigos programadores!

Sem comentários: