PS
Deprecated warning apresentado no Adianti 7.5 em um Ubuntu 22.04 com PHP 8.2
Bom Dia a Todos,
Instalei o Adianti 7.5 em um Ubuntu 22.04 com PHP 8.2 e estou recebendo as seguintes mensagens:
- Deprecated: Creation of dynamic property AdiantiCoreAdiantiCoreTranslator::$messages is deprecated in /var/www/html/gybwbr/lib/adianti/core/AdiantiCoreTranslator.php on line 26
- Deprecated: Creation of dynamic property LoginForm::$page->name is deprecated in /var/www/html/gybwbr/lib/adianti/control/Adianti/Control/TPage.php on line 257
- Deprecated: Creation of dynamic property LoginForm::$page_name is deprecated in /var/www/html/gybwbr/lib/adianti/control/TPage.php on line 257
- Deprecated: Creation of dynamic property LoginForm::$style is deprecated in /var/www/html/gybwbr/lib/adianti/control/TPage.php on line 257
Tentei acrescentar #[AllowDynamicProperties] antes da definição das classes, mas não surtiu efeito e as mensagens continuaram a ser apresentadas.
Consegui acrescentando #[\AllowDynamicProperties] antes da definição das classes, mas pelo que entendi esta será uma solução paliativa, pois na versão PHP 9.0 a criação dinâmica de propriedades se tornará um erro.
Penso que estas mensagens irão se apresentar para todas as Classes onde houver criação dinâmica de atributos. Gostaria de saber se existe alguma forma de evitar que a mensagem se apresente, pois acaba por deixar o layout da tela muito poluída e não gostaria de desativar a apresentação geral de erros e warnings.
Agradeço toda ajuda no sentido de contornar esse pequeno contratempo.
Pedro Soares
Instalei o Adianti 7.5 em um Ubuntu 22.04 com PHP 8.2 e estou recebendo as seguintes mensagens:
- Deprecated: Creation of dynamic property AdiantiCoreAdiantiCoreTranslator::$messages is deprecated in /var/www/html/gybwbr/lib/adianti/core/AdiantiCoreTranslator.php on line 26
- Deprecated: Creation of dynamic property LoginForm::$page->name is deprecated in /var/www/html/gybwbr/lib/adianti/control/Adianti/Control/TPage.php on line 257
- Deprecated: Creation of dynamic property LoginForm::$page_name is deprecated in /var/www/html/gybwbr/lib/adianti/control/TPage.php on line 257
- Deprecated: Creation of dynamic property LoginForm::$style is deprecated in /var/www/html/gybwbr/lib/adianti/control/TPage.php on line 257
Tentei acrescentar #[AllowDynamicProperties] antes da definição das classes, mas não surtiu efeito e as mensagens continuaram a ser apresentadas.
Consegui acrescentando #[\AllowDynamicProperties] antes da definição das classes, mas pelo que entendi esta será uma solução paliativa, pois na versão PHP 9.0 a criação dinâmica de propriedades se tornará um erro.
Penso que estas mensagens irão se apresentar para todas as Classes onde houver criação dinâmica de atributos. Gostaria de saber se existe alguma forma de evitar que a mensagem se apresente, pois acaba por deixar o layout da tela muito poluída e não gostaria de desativar a apresentação geral de erros e warnings.
Agradeço toda ajuda no sentido de contornar esse pequeno contratempo.
Pedro Soares
Editado 29/12/2022 (há 2 anos) - Clique para ver alterações
Bom dia Pedro,
Você poderia utilizar o error_reporting para exibir os erros e desconsiderar o Deprecated.
https://www.php.net/manual/en/errorfunc.constants.php