Quando um programa PHP acidentes , ele pára a execução no meio de processamento devido a um erro inesperado. Acidentes PHP podem ser graves, porque eles podem deixar os dados parcialmente processados ou atualizados e de repente fechar arquivos abertos quando ocorre o acidente. A causa de um acidente de PHP pode ser um erro no script PHP ou pode ser devido a dados ruins , ao invés de um erro de programação . Há várias coisas que você pode fazer quando o PHP cai para identificar a causa do acidente. Em seguida, você pode corrigir roteiro incorreta PHP ou incluir script extra que antecipa e erros armadilhas causado por dados ruins. Instruções
1
Comente arquivo de log do servidor web. Localize o arquivo , que sob o Apache é geralmente localizado em /var/log/apache2/error.log . Mostrar a parte mais recente do log de erro na tela , digitando:
cauda /var/log/apache2/error.log
2
Reveja as mensagens de erro no arquivo de log . Abra o script PHP em um editor e revisar o código que corresponde ao número da linha citada na mensagem de erro. Procure por erros de lógica que podem ter causado o acidente ocorrer. Examine pelo menos 10 linhas acima e abaixo o número da linha citada no erro, uma vez que o intérprete pode relatar um erro em uma linha diferente da linha onde ele está , na verdade contida
3
Turn. relatórios de erros de volta para que você possa de forma interativa depurar o script sem ter que rever o arquivo de log após cada etapa. Use um editor para modificar o script PHP. Comente a linha que tem a frase " error_reporting " e adicionar uma nova linha abaixo com a seguinte declaração :
error_reporting ( E_ALL );
4
Insert depuração de código para o script PHP para que você possa mais facilmente rastrear erros que são causados por dados ruins ou inesperados. Criar uma função para gravar mensagens de depuração para a tela e criar uma variável booleana que permite globalmente por sua vez, relatórios de erros e desligar. Insira declarações de depuração no código PHP. Por exemplo, adicione o seguinte código para o script PHP:
$ debug = true; função debug ( $ msg ) { global $ debug ; if ($ debug !) Return; echo "
* ** $ msg *** < /p> ";}
Insira a função de depuração em torno de onde o erro ocorreu. Por exemplo, digite :
debug ( "x = $ x e y = $ y após o processamento do primeiro item de dados ");
Altere a variável debug $ para false quando você já não quero escrever mensagens de depuração para a tela.
5
Use afirmações " try /catch " ou lógica " if-else " para interceptar erros que podem ser causados por condições inesperadas, tais como dados incorretos. Interceptar erros que podem causar um acidente , mesmo quando os dados nunca devem conter os valores que poderiam causar o acidente ocorrer. Por exemplo, digite o seguinte para evitar uma " divisão por zero " de erro , mesmo que um zero não é um valor válido para a variável :
$ média = 0; if (! $ Count = 0) {$ média = $ total /$ count ;}
6
Conte com a ajuda de colegas desenvolvedores que podem não ser tão familiar com o código. Às vezes, a causa de um erro pode ser uma hipótese de fazer devido a sua familiaridade com a forma como o programa funciona. Depois de encontrar a causa do acidente , brainstorm com outros desenvolvedores sobre outros acidentes que podem ser causados por erros de lógica ou de condições semelhantes de dados. Reveja todo o script PHP e corrigir outras áreas do programa que pode ser vulnerável a acidentes semelhantes .