6 tips para comenzar a aprender PHP de la mejor forma

 

PHP es uno de los lenguajes más utilizados en el mundo hoy en día. Según W3Techs, el 82% de los sitios web cuyo lenguaje de programación es conocido utiliza PHP. Esto incluye Facebook, Wikipedia, WordPress y más.

El lenguaje PHP es uno de los favoritos para aquellos que quieren empezar a estudiar programación. Es relativamente simple de aprender y tiene muchos materiales de estudio en Internet.

Sin embargo, PHP también ha cambiado mucho desde su creación. Muchas técnicas antiguas ya se consideran obsoletas hoy en día. Por lo tanto, es importante tener cuidado con los materiales de estudio utilizados. Muchos de ellos enseñan técnicas que ya no son adecuadas para las últimas versiones de PHP. Es esencial estudiar PHP de la manera correcta desde el comienzo de su viaje con el desarrollo web.

  1. Lógica de programación del estudio

Eso se aplica a cualquier lenguaje, no solo a PHP.

Es esencial conocer la Lógica de Programación. No sirve de nada querer empezar a programar en un determinado lenguaje sin tener una base en Logica.

Intenta estudiar Lógica de Programación. Se puede estudiar a través de pseudo-códigos o incluso con un lenguaje de programación. Puede aplicar los conceptos directamente en PHP, al igual que puede usar C, Pascal u otro.

Preste especial atención a la lógica de programación. De esta manera será mucho más sencillo y natural desarrollar en PHP y otros lenguajes.

  1. Habilite todos los errores de visualización

PHP es un lenguaje muy flexible. Esto tiene ventajas y desventajas, por supuesto.

Hay configuraciones en PHP, display_errors y error_reporting, que se utilizan para ocultar mensajes de error y advertencias.

Esto es útil para aplicaciones en producción cuando no debemos mostrar errores al usuario final porque revelan datos confidenciales, como la estructura de archivos y directorios, por ejemplo.

Sin embargo, en un entorno de desarrollo, es fundamental que se muestren todos los mensajes de error y advertencias. Como programador, es su deber corregirlos todos. Esconderlos es lo mismo que barrer la casa y tirar polvo debajo de la alfombra …

El display_errors recibe los valores Activado o Desactivado. Cuando el sistema esté en producción, manténgalo apagado.

El error_reporting define los niveles de mensajes que deben mostrarse. Por ejemplo, puede definir que solo se mostrarán los errores fatales. Sin embargo, lo correcto es mostrar todos los niveles de error para que pueda corregirlos antes de publicar el proyecto. Esta directiva recibe un valor entero. Para facilitar, hay constantes que corresponden a los niveles de error. Lo ideal es poner su valor en E_ALL | E_STRICT. La E_ALL constante muestra todos los errores excepto los del nivel E_STRICT, que son mensajes de advertencia sobre buenas prácticas.

Por lo tanto, es necesario unir ambas constantes con el operador | (O BIEN).

  1. MySQL y MySQLi

MySQL es el DBMS más utilizado con PHP. Y hay muchos artículos y tutoriales que muestran cómo integrar los dos, utilizando funciones mysql_connect y mysql_query, que son de la extensión mysql de php.

El problema es que la extensión mysql ha estado obsoleta desde PHP 5.5, que fue lanzado en abril de 2013. Es decir, desde esa fecha, la extensión mysql debería haber sido dejada de lado por los programadores. Pero pocos lo están haciendo todavía.

PHP 5 trajo la extensión mysqli (tenga en cuenta la «i» al final), que es una versión mejorada de la extensión mysql, que le permite utilizar las características más nuevas de MySQL DBDb. Lo correcto es usar la extensión mysqli.

Otra alternativa, aún mejor, es usar PDO, que permite abstraer la conexión, es decir, es posible usar cualquier DBMS, sin tener que cambiar demasiado código para migrar de un DBMS a otro.

  1. Instalación del servidor web

Es muy común ver principiantes usando paquetes que instalan Apache + PHP + MySQL, como WAMP, XAMP, LAMP y MAMP. Una desventaja de estos paquetes es que no puede actualizar un componente específico. Debe esperar una nueva versión del paquete completo.

Estos paquetes surgieron porque era relativamente difícil instalar Apache con el módulo PHP. Sin embargo, a partir de PHP 5.4, ya no es necesario utilizar Apache u otro servidor Web. PHP trae un servidor incorporado, ideal para pruebas en entornos de desarrollo.

Este servidor incorporado tiene prácticamente todas las características que tiene Apache, incluido el soporte .htaccess y la reescritura de URL (URL Rewriting o URL Friendly).

Vale la pena recordar que este servidor incorporado es solo para desarrollo. En un entorno de producción, debe utilizar un servidor web, como Apache o Nginx.

5.SQL Inyección y filtrado de datos

La inyección SQL es un ataque común que puede destruir una base de datos por completo. Es esencial protegerse contra ella.

El ataque se produce cuando el programador no filtra las entradas de datos. Es decir, el atacante puede escribir un comando SQL malintencionado en la dirección URL o en un formulario. Cuando la cadena no se filtra correctamente, el comando puede ser ejecutado por DBMS y puede generar resultados catastróficos.

PHP tiene las funciones filter_var y filter_input, que son muy útiles para el filtrado de datos. Sin embargo, para protegerse contra la inyección SQL, hay una técnica mejor: usar instrucciones preparadas.

Con las instrucciones preparadas, los valores SQL se envían en «paquetes» SQL separados correctamente el día. Por lo tanto, el filtrado de datos ya está hecho, evitando la inyección SQL.

Puede usar declaraciones preparadas con MySQLi o PDO, que se mencionaron justo antes aquí cuando hablamos de MySQL y MySQLi.

  1. Cuidado con los Register Globals

La política de register_globals ahora estaba deshabilitada de forma predeterminada desde PHP 4.2.0. Cuando está habilitado, hace que las variables globales se registren (inicialicen) automáticamente en el script en ejecución. Esto causó varios agujeros de seguridad, especialmente cuando los programadores no iniciaron sus variables.

Si usas PHP 5.4 o superior, no tienes que preocuparte por register_globals porque ya ni siquiera existe. Esto equivale a decir que está desactivado, como se recomienda.

La mayoría ya debería usar PHP 5.4 o superior, pero es importante citar esta directiva, principalmente por razones históricas. Muchos tutoriales e incluso sistemas antiguos hacen uso de esta característica. ¡Así que mantente atento!

Deja un comentario