elgio
(usa OpenSuSE)
Enviado em 02/12/2011 - 21:07h
Os erros podem ser ligados ou desligados no arquivo de configuração e/ou no próprio programa.
Se no arquivo de configuração estiver DESLIGADO, não adianta que jamais conseguirás fazer aparecer erros!
Se no arquivo de configuração estiver LIGADO, tu podes optar em fazer aparecer ou não.
As distribuições tendem a colocar um php.ini com os erros DESLIGADOS, pois os erros mostram a linha que tem erro e isto pode ser considerado uma falha de segurança.
Então, vamos lá:
você precisa alterar o php.ini. Tu não disse qual distro, mas pelo teu perfil, vou assumir que é o Debian. Edite com qualquer editor de texto como root o arquivo /etc/php5/apache2/php.ini. Procure pela linha display_erros. Acredito que deva estar assim (pois é padrão no debian):
display_errors = Off
Troque para
display_errors = On
É altamente recomendável que volte a ser OFF quando o servidor entrar em produção.
PRONTO. Agora está habilitado no php. Não deves mais ter tela em branco.
Estando em OFF, no teu código PHP:
error_reporting(0); // sem msg de erro
error_reporting(E_ALL); // todas
Leia a função error_reporting para ver o que é possível.
Erros Lógicos podem ser desligados instrução por instrução. Exemplo:
// considerando que total não foi inicializado e sequer existe
if ($total == 200)
Isto vai gerar um warning dizendo que total não existe se o error_reporting estiver configurado.
@if ($total == 200)
Sem mensagens de erro para esta instrução (erros warnings, erros de sintaxe aparecem).
Acredito que assim que ligares o php.ini irás te apavorar com a quantidade de warnings.