Introdução: por que o PHP reclama e o que fazer?
\n\nVocê escreve o código, tem certeza de que está tudo perfeito, clica em "Atualizar" no navegador — e vê algo como:
\n\nParse error: syntax error, unexpected '}' in /home/user/index.php on line 15\n\nFamiliar? Se você já enfrentou erros PHP parse/syntax, sabe aquela sensação de leve pânico. Parece que o computador enlouqueceu e que você é um péssimo programador. Mas, na verdade, é muito mais simples. O PHP não está tentando te ofender — ele está apenas dizendo honestamente: "Não entendo o que você quer de mim".
\n\nNeste artigo, vamos entender o que é um erro de sintaxe PHP, como lê-lo, encontrá-lo e, o mais importante, corrigi-lo. O conteúdo é voltado para iniciantes, então nada de mágica — apenas prática e exemplos reais. Vamos nessa!
\n\nO que são erros PHP parse/syntax em termos simples?
\n\nImagine que você está escrevendo uma carta para um amigo, mas esquece de colocar um ponto final. O amigo, claro, vai entender o que você quis dizer. Mas o PHP não é um amigo. O PHP é um professor rigoroso que exige ordem perfeita.
\n\nO Parse error (erro de análise) ocorre quando o PHP não consegue interpretar seu código devido a uma violação das regras da linguagem. Simplificando, você violou a sintaxe do PHP.
\n\nAqui estão as causas mais comuns:
\n- \n
- Ponto e vírgula
;faltando \n - Chave
{}, parêntese()ou colchete[]sobrando ou faltando \n - Aspas ou string não fechada \n
- Uso incorreto de palavras-chave \n
- Caracteres extras no código \n
A boa notícia: o PHP sempre indica a linha e o tipo do erro. Nossa tarefa é aprender a ler essas dicas.
\n\nComo ler a mensagem de erro do PHP?
\n\nUma mensagem típica se parece com isso:
\n\nParse error: syntax error, unexpected '}' in /var/www/index.php on line 15\n\nVamos analisar parte por parte:
\n- \n
- Parse error — tipo do erro (sintático) \n
- syntax error, unexpected '}' — o que exatamente o PHP não esperava ver \n
- /var/www/index.php — arquivo onde o erro ocorreu \n
- on line 15 — linha onde o PHP tropeçou \n
Dica importante: O PHP geralmente indica a linha onde encontrou o problema, mas a causa real pode estar 1 ou 2 linhas acima. Por exemplo, se você esqueceu um ponto e vírgula na linha 14, o erro pode aparecer na linha 15.
\n\nTop 5 erros PHP parse/syntax mais comuns (com exemplos)
\n\n1. Ponto e vírgula ; faltando
\nO erro mais popular entre iniciantes. Cada instrução em PHP deve terminar com ;.
Incorreto:
\n<?php\necho "Olá, mundo"\necho "Como vai?";\n?>\n\nErro:
\nParse error: syntax error, unexpected 'echo' (T_ECHO) in /test.php on line 3
Correto:
\n<?php\necho "Olá, mundo";\necho "Como vai?";\n?>\n\n2. Chaves não fechadas ou incorretas
\nPara cada chave de abertura {, deve haver uma de fechamento }. E vice-versa.
Incorreto:
\n<?php\nif (true {\n echo "Condição atendida";\n}\n?>\n\nErro:
\nParse error: syntax error, unexpected '{' in /test.php on line 2
Correto:
\n<?php\nif (true) {\n echo "Condição atendida";\n}\n?>\n\n3. Chave de fechamento extra
\nÀs vezes colocamos um } onde não é necessário.
Incorreto:
\n<?php\n$arr = [1, 2, 3];\necho $arr[0];\n}\n?>\n\nErro:
\nParse erro