Introducción: ¿por qué PHP se queja y qué hacer al respecto?
\n\nEscribes código, estás seguro de que todo está perfecto, presionas "Actualizar" en el navegador y ves algo como:
\n\nParse error: syntax error, unexpected '}' in /home/user/index.php on line 15\n\n¿Te suena familiar? Si alguna vez te has topado con errores PHP parse/syntax, sabes esa sensación de leve pánico. Parece que la computadora se volvió loca y que tú eres un pésimo programador. Pero en realidad, todo es mucho más simple. PHP no intenta ofenderte, solo te dice honestamente: "No entiendo lo que quieres de mí".
\n\nEn este artículo, analizaremos qué es un error de sintaxis PHP, cómo leerlo, encontrarlo y, lo más importante, corregirlo. El material está pensado para principiantes, así que nada de magia: solo práctica y ejemplos reales. ¡Allá vamos!
\n\n¿Qué son los errores PHP parse/syntax en palabras sencillas?
\n\nImagina que le escribes una carta a un amigo, pero olvidas poner un punto al final de la oración. Tu amigo, por supuesto, adivinará lo que quisiste decir. Pero PHP no es un amigo. PHP es un profesor estricto que exige un orden perfecto.
\n\nUn error de parse (error de análisis) ocurre cuando PHP no puede interpretar tu código debido a una violación de las reglas del lenguaje. En pocas palabras, has infringido la sintaxis de PHP.
\n\nEstas son las causas más comunes:
\n- \n
- Un punto y coma
;faltante \n - Un paréntesis
{},()o[]de más o de menos \n - Una comilla o cadena sin cerrar \n
- Uso incorrecto de palabras clave \n
- Símbolos extraños en el código \n
La buena noticia: PHP siempre indica la línea y el tipo de error. Nuestra tarea es aprender a leer esas pistas.
\n\n¿Cómo leer un mensaje de error de PHP?
\n\nUn mensaje típico se ve así:
\n\nParse error: syntax error, unexpected '}' in /var/www/index.php on line 15\n\nVamos a desglosarlo por partes:
\n- \n
- Parse error — tipo de error (sintáctico) \n
- syntax error, unexpected '}' — qué es lo que PHP no esperaba ver \n
- /var/www/index.php — el archivo donde ocurrió el error \n
- on line 15 — la línea donde PHP se topó con el problema \n
Truco importante: PHP a menudo señala la línea donde detectó el problema, pero la causa real puede estar 1 o 2 líneas arriba. Por ejemplo, si olvidaste un punto y coma en la línea 14, el error puede aparecer en la línea 15.
\n\nTop 5 errores PHP parse/syntax más comunes (con ejemplos)
\n\n1. Punto y coma faltante ;
\nEl error más popular entre principiantes. Cada instrucción en PHP debe terminar con ;.
Incorrecto:
\n<?php\necho "Hola, mundo"\necho "¿Cómo estás?";\n?>\n\nError:
\nParse error: syntax error, unexpected 'echo' (T_ECHO) in /test.php on line 3
Correcto:
\n<?php\necho "Hola, mundo";\necho "¿Cómo estás?";\n?>\n\n2. Paréntesis sin cerrar o incorrectos
\nCada paréntesis de apertura { debe tener su par de cierre }. Y viceversa.
Incorrecto:
\n<?php\nif (true {\n echo "Condición cumplida";\n}\n?>\n\nError:
\nParse error: syntax error, unexpected '{' in /test.php on line 2
Correcto:
\n<?php\nif (true) {\n echo "Condición cumplida";\n}\n?>\n\n3. Paréntesis de cierre de más
\nA veces ponemos un } donde no hace falta.
Incorrecto:
\n<?php\n$arr = [1, 2, 3];\necho $arr[0];\n}\n?>\n\nError:
\nParse erro