Создавать динамический SQL с выражениями «И», не путая вложенные условные выражения?

Я довольно плохо знаком с php и кодированием в целом.

У меня есть ряд условий, которые мне нужно проверить, если они установлены. Это $ option1, $ option2, $ option3

if (isset($option1)){
    if (isset($option2)){
        if (isset($option3)){
            $query = "SELECT *
                               FROM Group
                               WHERE FirstOption = '$option1' AND SecondOption = '$option2' AND ThirdOption = '$option3'";
        }
        else {
            $query = "SELECT *
                               FROM Group
                               WHERE FirstOption = '$option1' AND SecondOption = '$option2";
        }
    }
    else {
        $query = "SELECT *
                           FROM Group
                           WHERE FirstOption = '$option1' AND ThirdOption = '$option3";
    }
}
else {
    // .. snip, much more duplicated code ..
}

Так что проблема здесь в том, что мне нужны уникальные запросы для mysql, основанные на том, установлены ли условия или нет. Но они находятся друг в друге, и у меня на самом деле есть 7 вариантов, так что ветвление очень большое! Я остановился в три часа после почти смущения себя.

Должен быть намного лучший способ написать это - кто-нибудь может помочь мне лучше понять?

Ответы на вопрос(5)

Ваш ответ на вопрос