Какой бы ты способ не выбрал, ты на этом особо много не потеряешь. Речь идет о паре микро(!)секунд, если они способны сделать погоду твоему проекту, то у меня для тебя плохие новости.
Куда больше времени займет вытаскивание данных из БД. Вообще, с БД нужно по стараться по возможности соединяться как можно реже.
А что касается способа проверки конкретно, то тут всего несколько вариантов.
Смотри.
if () {
} else if () {
} else {
}
Ну тут все понятно, не буду останавливаться.
$yourVar == 1 ? // do in for me if true : // do it for me in case of lie;
В этом способе сначала идет условие проверки, после идет знак вопроса. Проще говоря, мы как бы спрашиваем у интерпретатора, задаем вопрос ему. А потом он просто выбирает, что делать. Если условие дало true, то выполнится часть до двоеточия, а если false, то после двоеточия.
Минусы по сравнению с if - плохая читабельность, также немногоусловность, то бишь на проверку можно отправить только одно условие (отличие - if else) а также то, что выполнять можно только относительно небольшой участок кода.
switch $yourVar;
case 1:
// your code
break;
case "two":
// your code
break
default:
// your code
Конструкция switch быстро сравнивает данную переменную (результат выполнения функции, что угодно, проще говоря) с заданными значениями. Значений можно иметь сколько угодно, только это не могут быть математ. выражения и прочая подобная фигня (поправьте, если я не прав). Это должны быть уже просто заранее известные значения.
default здесь определяет, что будет происходить при обнаружении неправильного условия. Точнее, если ни один из предложенных вариантов не подошел. Казалось бы, зачем такое надо, если мы используем только то, что нам точно известно, но, согласитесь, лучше всегда перестраховаться. В конце концов просто выбить в default'е
exit("Unexpected error");
Знаешь, честно скажу, что я не измерял микросекунды различий между этими функциями. Каждая из них хороша по-своему. if лучше читается и понимается в чужом коде (да и в своем, написанном ночью :D), ? : быстрее пишется, switch позволяет быстро пробежаться по заданным значениям. Выбирай сам, а пара микросекунд разницы тебе погоды не должны сделать, поверь.