PHP: vorbereitete Anweisung, IF-Anweisung benötigt

Ich habe den folgenden Code:

$sql = "SELECT name, address, city FROM tableA, tableB WHERE tableA.id = tableB.id";

if (isset($price) ) {
    $sql = $sql . ' AND price = :price ';
}
if (isset($sqft) ) {
    $sql = $sql . ' AND sqft >= :sqft ';
}
if (isset($bedrooms) ) {
    $sql = $sql . ' AND bedrooms >= :bedrooms ';
}


$stmt = $dbh->prepare($sql);


if (isset($price) ) {
    $stmt->bindParam(':price', $price);
}
if (isset($sqft) ) {
    $stmt->bindParam(':price', $price);
}
if (isset($bedrooms) ) {
    $stmt->bindParam(':bedrooms', $bedrooms);
}


$stmt->execute();
$result_set = $stmt->fetchAll(PDO::FETCH_ASSOC);

Was ich bemerke, ist die redundante Anzahl von IF-Anweisungen, die ich habe.

Frag: Gibt es eine Möglichkeit, meinen Code zu bereinigen, damit ich diese mehreren IF-Anweisungen für vorbereitete Anweisungen nicht habe?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage