rss
twitter
  •  

Evitando las asignaciones en condiciones

| Posted in General |

0

assignment in condition es un error muy común que cometemos muchos quienes programamos con PHP. Incluso en muchos ejemplos “oficiales” que figuran en el manual oficial de PHP se recurre a este tipo de “desliz”.

En realidad no se trata de un error en sí, sino de una buena practica de programación que evita disparar comportamientos indeseados cuando la aplicación tiene a crecer.

La premisa es simple: no debes asignar variables dentro de una condición.

El típico ejemplo mal indebidamente hecho:

while($array = mysql_fetch_array($result)){

¿Y como debería ser?

while( ($array = mysql_fetch_array($result)) !== false){

¿Cual es la diferencia?

Esta buena práctica evita errores como:

if($a = 36){

Fíjense como sucede una “asignación dentro de una condición“, exactamente lo que debemos evitar… y es malo porque esa asignación SIEMPRE será cierta (true).

¿Y porqué usar !== en lugar de un simple !=?

Ese es otro detallito que muchos suelen ignorar ;-), resulta que esperamos un FALSE booleano, no una “false” cualquiera, así que para estar seguros del valor y el tipo (no vaya a ser un string con la palabra false), lo mejor es comprobar si el dato es IDÉNTICO o NO IDÉNTICO, los cuales evalúan no sólo el contenido de la variable, sino el tipo de variable también.

Espero les haya gustado esta mini-entrada, tenía tiempo sin redactar algo a este abandonado blog. Hasta la próxima.

Compartir:
  • Facebook
  • Twitter
  • Digg
  • Meneame
  • StumbleUpon
  • del.icio.us
  • Google Bookmarks
  • Technorati
  • Netvibes

Escriba un comentario