Мне было интересно, что было лучше:
$lookup = array( "a" => 1, "b" => 2, "c" => 3 );
return $lookup[$key];
или
if ( $key == "a" ) return 1
else if ( $key == "b" ) return 2
else if ( $key == "c" ) return 3
или, может быть, просто хороший выключатель ...
switch($key){
case "a": return 1;
case "b": return 2;
case "c": return 3;
}
Я всегда предпочитаю первый метод, поскольку я могу отделить данные от кода; В этом масштабе это выглядит довольно глупо, но в большем масштабе с тысячами строк поиска записей; Сколько еще времени PHP займет на создание массива, а затем проверяет только 1 или 2 записи на запрос.
Я думаю, что его нужно будет протестировать и синхронизировать, но я бы сказал, что чем больше и сложнее массив, тем медленнее он станет.
PHP должен иметь возможность обрабатывать запросы быстрее, чем я в PHP-коде, но, прежде всего, сборка массива занимает много времени.