Erros Comuns de PHP

Dutch French Spanish Portuguese Italian German Japanese Chinese Korean Russian Arabic Bookmark and Share this Article Original English article
  

Neste tutorial, nós estamos indo olhar alguma dos erros comuns de PHP que ocorrem e de como resolvê-los.

Analise gramaticalmente Erros

Um erro analisar gramaticalmente ocorre quando o formato de seu código de PHP está incorreto. Para o exemplo, o seguinte código:

<?php for($i=1;$i<10;$i++){$output = "Iteração 
Atual: ". $i. "< Br >" eco #; 
}? >  

retornará um erro similar ao seguinte:

Analise gramaticalmente o erro: analise gramaticalmente o erro, T_ECHO inesperado em c:\webserver\test2.php na linha 4

Esta mensagem de erro é mostrada porque há um semicolon faltante na extremidade da terceira linha do exemplo precedente. A mensagem diz-lhe que PHP não esperava o comando do eco na linha 4. Isto é porque esperou lá ser um semicolon na extremidade de linha 3. Na maioria das vezes quando você começa este erro, a razão serão um problema com a linha precedente, tal como o semicolon faltante como no exemplo precedente.

Este erro ocorre também com cintas, {}, para o exemplo com o seguinte código:

<?php for($i=1;$i<10;$i++){$output = "Iteração 
Atual: ". $i. "< Br >"; o eco de 
if($output==5){"isto é a quinta iteração"; }}}? >  

qual retornará a mensagem de erro

Analise gramaticalmente o erro: analise gramaticalmente erro, inesperado ‘}’ em c:\webserver\test2.php na linha 8

Isto é causado por uma cinta de fechamento extra,}, na linha 8. Embora seja simples ver o problema no bloco curto precedente do código, pode ser muito mais duro com o código complicado que contem muitos laços aninhados ou se as indicações, e forem duros combinar as cintas da abertura às cintas de fechamento.

Para encontrar rapidamente o problema, você pode usar as cintas do contrapeso do MX de Dreamweaver comanda, que está no menu da edição. Você pode colocar o cursor em uma linha do código, seleciona o comando das cintas do contrapeso, e destacará todas as linhas do código para esse bloco da cinta da abertura à cinta de fechamento. Verificando as camadas de seu código com o contrapeso as cintas comandam, você pode rapidamente encontrar onde há uma cinta faltante ou extra.

Índice ou variável undefined

Esta seção explica o que fazer se você receber uma mensagem em seu Web page como um do seguinte:

Aviso 

Índice undefined: ação em \home\www\login.php na linha 25

Aviso 

Variável undefined: mensagem em home\www\login.php na linha 52

Estas mensagens confundem freqüentemente povos, porque olham como mensagens de erro e podem ocorrer mesmo com código que trabalha perfeitamente. As mensagens não são realmente erros; instead, são classificados como as "observações," que o alertam às situações onde não há realmente um erro que pare o código de trabalhar. O que a mensagem diz você é que o variável mencionado não estêve definido especificamente usando uma indicação de PHP var.

Como um exemplo, olhe os seguintes dois blocos do código:

<?php var #; $username = # 
' ]; ? > e: 
<?php $username = # ' ]; 
? >  

Ambos os blocos do código têm resultados idênticos, mas o segundo bloco do código trará acima uma mensagem similar a essas mostradas previamente, porque nós não definimos especificamente o variável #. PHP trabalha definindo suas variáveis primeiramente, que os meios ele podem o alertar se você soletrar erradamente uma variável em seu código, porque a variável será nova e definida não previamente.

Há duas soluções a este problema. O primeiro deve atravessar para trás seu código e certificar-se de que cada variável está definida especificamente. A segunda opção deve parar observações de ser indicado, porque são frequentemente mais problema do que são valor. Você pode fazer este adicionando o seguinte código ao alto de cada página que tem o erro:

<?php que error_reporting (E_ALL & ~ E_NOTICE); ? >  

Isto diz PHP para mostrar todas as mensagens e avisos de erro mas para não mostrar as observações. Para fazer permanentemente isto, mude o ajuste error_reporting em sua lima de php.ini ao ajuste precedendo.

Os Encabeçamentos Emitiram Já Erros

Esta é uma outra mensagem de erro que ocorra freqüentemente, especial ao usar bolinhos ou sessões, e seja similar à seguinte mensagem:

Não pode modificar a informação de encabeçamento - encabeçamentos emitidos já perto (saída começada em /home/web/newtest.php:3) em /home/web/test.php na linha 5

O problema é causado pelos espaços em branco antes da função do encabeçamento. A função do encabeçamento de PHP é usada dirigir de novo o usuário a uma outra página, que faça emitindo comandos no encabeçamento da página ao browser, dizendo o para ir à página nova. Entretanto, uma vez que um encabeçamento foi emitido ao browser, você pode nenhumas funções mais longas do uso que alcançam o encabeçamento, tal como a função do encabeçamento. Se qualquer coisa for emitido ao browser que não é uma função especial do encabeçamento, o encabeçamento é closed e tudo mais é suposto para ser HTML para o Web page. Assim porque é isto acontecer com o código precedente?

O problema ocorre porque há uma linha em branco (a linha 2) que é emitida ao browser. Isto faz com que o encabeçamento seja fechado, assim que a função do encabeçamento falha, porque pode não mais por muito tempo escrever ao encabeçamento. Entretanto, nivele se você remover a linha em branco na linha 2, você começará a mesma mensagem de erro. Isto é porque há dois espaços no fim do? > Tag na linha 1. Estes devem também ser suprimidos, porque outra vez serão emitidas ao browser e fecharão o encabeçamento. Estes espaços na extremidade de linhas podem ser duros de manchar-se porque são invisíveis!

Há um método que você pode se usar, embora, para fazer encontrá-los mais fáceis. Se você colocar seu cursor no fim de cada linha e esquerdo-clique e mover a direita do rato, todos os espaços na extremidade da linha estarão destacados, como mostrado no tiro precedente da tela. Os espaços podem então ser removidos.

Se o código for testado agora outra vez, deve trabalhar corretamente.

Este erro pode também ocorrer se output nao incluido em Tag de PHP em alguns incluir limas para a página. Assim se seu código principal da página olhar muito bem e você estiver começando ainda o erro, a etapa seguinte será verificar com alguns inclui limas os usos da página. Frequentemente, o erro é causado por uma linha nova depois que o Tag final de PHP na lima incluir, que deve ser removida se presente.

este é um artigo adicionado por Stratus Huo Quan


Disclaimer: Nosso Web site não é responsável para a informação contida por este artigo. Este artigo em nenhuma maneira reflete as vistas, as opiniões, os pensamentos ou a opinião da equipe de funcionários do diretório dos artigos.

Observação da tradução: Os erros comuns do artigo "PHP" foram traduzidos usando um serviço de tradução automatizado. Nós desculpamo-nos sincerely por todos os erros da tradução que ocorram. Obrigado compreendendo.


Online: 982 users browsing the articles directory