Como ativar exibição de erros no PHP
O PHP, por padrão, pode ocultar mensagens de erro por questões de segurança, especialmente em servidores de produção. No entanto, durante o desenvolvimento, é essencial visualizar os erros para corrigir problemas no código.
Ativando a exibição de erros via php.ini
A forma mais eficaz de ativar a exibição de erros no PHP é configurando o arquivo php.ini
. Localize e edite este arquivo:
No Linux/macOS:
sudo nano /etc/php/{versao}/apache2/php.ini # Para Apache
sudo nano /etc/php/{versao}/cli/php.ini # Para execução no terminal
No Windows (XAMPP):
C:\xampp\php\php.ini
Agora, encontre as seguintes linhas e altere seus valores:
display_errors = On
error_reporting = E_ALL
Após modificar, reinicie o servidor:
sudo systemctl restart apache2 # Para Apache
sudo systemctl restart php-fpm # Para Nginx com PHP-FPM
Ativando a exibição de erros via código PHP
Se não puder modificar o php.ini
, adicione estas linhas no início do seu script PHP:
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
?>
Isso ativará a exibição de erros apenas para aquele arquivo específico.
Como visualizar erros de um log
Se os erros não aparecerem na tela, você pode consultá-los no log do PHP. No Linux, use:
tail -f /var/log/apache2/error.log # Para Apache
No Windows, o log pode ser encontrado dentro da pasta do XAMPP em apache/logs/error.log
.
Desativando erros em produção
Nunca ative display_errors
em ambientes de produção, pois isso pode expor informações sensíveis do sistema. Em servidores de produção, o ideal é salvar os erros em logs:
display_errors = Off
log_errors = On
error_log = /var/log/php_errors.log
Por que a exibição de erros no PHP é essencial para desenvolvedores?
Durante o desenvolvimento de aplicações PHP, a exibição de erros é uma ferramenta essencial para identificar e corrigir problemas rapidamente. O PHP possui um sistema robusto de relatórios de erro, permitindo desde notificações simples até mensagens detalhadas de falhas críticas. No entanto, em servidores de produção, exibir erros diretamente no navegador pode ser perigoso, pois informações sensíveis podem ser expostas a usuários mal-intencionados. Por isso, é importante saber quando ativar e quando desativar a exibição de erros, utilizando logs para monitorar problemas sem comprometer a segurança do sistema.
Algumas aplicações:
- Depuração de código PHP durante o desenvolvimento
- Identificação rápida de erros sintáticos e lógicos
- Monitoramento de problemas em servidores de produção via logs
- Melhoria na segurança, evitando exibição de erros para usuários finais
Dicas para quem está começando
- Habilite
display_errors
apenas em ambientes de desenvolvimento. - Use
error_reporting(E_ALL);
para capturar todos os tipos de erros. - Se os erros não aparecerem, cheque o log de erros do Apache ou do PHP.
- Evite exibir erros em produção, utilize logs para monitorar falhas.
- Use
ini_set()
dentro dos arquivos PHP para ativar erros sem modificar o php.ini.
Contribuições de Daniel Moreira