Posts Tagged ‘array’
Enumeradores en PHP (como en C#)
En el mundo de la programacion los enumeradores son utilizados, para mantener una mayor claridad en el codigo, ya que evitan en tener cosa amarradas a un numero fijo especifico, lo cual hace el codigo mucho mas facil de mantener, pero no me pongo a inventar y le dejo una definicion (tipo microsoft) de que es un enumerador:
La palabra clave enum se utiliza para declarar una enumeración, un tipo distinto que consiste en un conjunto de constantes con nombre denominado lista de enumeradores.
Ejemplo en C#
enum Dias{ Dom = 1, Lun, Mar, Mie, Jue, Vie, Sab};
int x = (int)Dias.Mar;
Console.WriteLine(x);
//Esto produce como salida un 3.
Opcionalmente se puede establecer el orden, pero por defecto se inicia en cero, en el ejemplo anterior se dice que el primer elemento vale 1, los demas toman los valores por secuencia, si no tiene valor predefinido incrementa el valor de su antecesor.
Como PHP, no maneja nativamente el concepto de enumceradores, esta es una manera de implementarlo, aunque no la mejor, pero algo es algo.
Ejemplo de como aplicar lo anterior en php:
$miEnumeradorDias = array ("Dom" => 1, "Lun" => 2, "Mar" => 3, "Mie" => 4, "Jue" => 5, "Vie" => 6, "Sab" => 7);
$d = $miEnumeradorDias ["Mar"];
echo $d;
//Esto produce 3
Otro ejemplo similar:
$otroEnumerador = array("rojo" => 1, "azul" => 2, "amarillo" => 3);
$a = $otroEnumerador["azul"];
echo $a;
//Esto produce 2
Existen otras formas de emular los enumeradores, pero mientras esta me saco del apuro que tenia. Luego con tiempo vere si implemento la solucion planteada aca:
http://it.toolbox.com/blogs/macsploitation/enums-in-php-a-native-implementation-25228