I often find myself needing a simple PHP lookup array/table where I don't want to bother using a database.
For instance, I might have:
1 stands for "Good"
2 stands for "Bad"
3 stands for "Ugly"
Two ways it could be implemented are shown below. Is one more efficient than the other? Is there any other more intuitive ways to implement this?
switch($code)
{
case 1:
$result = "Good";
break;
case 2:
$result = "Bad";
break;
case 3:
$result = "Ugly";
break;
default:
$result = NULL;
}
$array = array(
1 => "Good",
2 => "Bad",
3 => "Ugly"
);
$result = $array[$code];
It's a matter of what are you going to do with your lookup.
case
or array
that way at all.So, case
option is inferior in most cases, as it is less scalable and not able to change in run time.
To simulate the default
case, use something like
$result = in_array($key, $lookup) ? $lookup[$key] : $default;