Los 10 errores de PHP más comunes que comete todo principiante

Escribes código. Refrescas la página. Ves una pantalla blanca vacía.

Esto sucede porque PHP falla silenciosamente de forma predeterminada. Si no ves los errores, no puedes corregirlos.

Comienza tu desarrollo añadiendo estas líneas al principio de tu archivo:

ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL);

Esto obliga a PHP a mostrarte qué está mal. No uses esto en producción.

Aquí tienes 10 errores comunes y cómo solucionarlos.

  1. Falta de puntos y coma PHP necesita un punto y coma para finalizar una sentencia. Si olvidas uno, el script se detiene. Solución: Termina siempre tus líneas con un punto y coma.

  2. Comparación débil El operador == cambia los tipos antes de comparar. Esto conduce a resultados incorrectos. Solución: Usa ===. Esto comprueba tanto el valor como el tipo.

  3. Variables no definidas Usar una variable que no has creado causa errores de lógica. Solución: Usa el operador de coalescencia nula. $name = $_GET['name'] ?? 'Guest';

  4. Ámbito de las variables globales Las funciones no pueden ver variables que están fuera de ellas. Solución: Pasa las variables a las funciones como parámetros.

  5. Inyección SQL Introducir la entrada del usuario directamente en una consulta es peligroso. Los atacantes pueden robar tus datos. Solución: Usa sentencias preparadas (prepared statements) con marcadores de posición.

  6. Cross-Site Scripting (XSS) Imprimir la entrada del usuario sin procesar en la pantalla permite que se ejecuten scripts maliciosos en los navegadores. Solución: Usa htmlspecialchars() en toda la salida.

  7. Errores de cabecera (Header) No puedes enviar una cabecera después de haber enviado cualquier texto o espacio al navegador. Solución: Coloca las llamadas a header() al principio de todo. Usa siempre exit() después de una redirección.

  8. Faltan claves en el formulario Acceder a una clave de formulario que no existe provoca errores. Solución: Usa el operador de coalescencia nula para proporcionar un valor por defecto.

  9. Include vs Require El comando include solo emite una advertencia si falta un archivo. El script sigue ejecutándose y falla más tarde. Solución: Usa require_once para archivos críticos como las conexiones a la base de datos.

  10. Valores de retorno no verificados Muchas funciones de PHP devuelven false si fallan. Usar ese valor false en el siguiente paso provoca un error. Solución: Comprueba si la función devolvió false antes de usar el resultado.

Resumen para un mejor código: • Activa el reporte de errores en desarrollo. • Usa === en lugar de ==. • Verifica los valores de retorno. • Sanea toda la entrada del usuario.

Fuente: https://dev.to/bikkisingh/top-10-php-bugs-every-beginner-makes-and-how-to-fix-them-1anh