In der PHP-Sprache verwenden wir häufig relationale Datenbanken wie MySQL, Oracle usw. Wenn wir Daten in der Datenbank abfragen müssen, verwenden wir normalerweise die WHERE-Bedingung, um den Umfang der Abfrage anzugeben.
In PHP wird die Datenabfrage mithilfe von WHERE-Bedingungen im Allgemeinen durch das Zusammenfügen von SQL-Anweisungen implementiert. Wir können die in PHP integrierte PDO-Klasse oder die MySQL-Klasse verwenden, um eine Verbindung zur Datenbank herzustellen und SQL-Anweisungen auszuführen.
Wenn wir beispielsweise die Klasse mysqli verwenden, können wir WHERE-Bedingungen über den folgenden PHP-Code abfragen:
<?php $con = mysqli_connect("localhost","my_user","my_password","my_db"); // Check connection if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } // Perform queries $result = mysqli_query($con,"SELECT * FROM customers WHERE age > 18"); while($row = mysqli_fetch_array($result)) { echo $row['name'] . " " . $row['age']; } mysqli_close($con); ?>
Im obigen Code können wir sehen, dass wir The WHERE verwenden Mit der Bedingung wird der Umfang der Abfrage angegeben und die Abfrageergebnisse werden auf der Seite ausgegeben.
Können wir jedoch bei Verwendung der WHERE-Bedingung ein Array als Abfragebedingung übergeben?
Die Antwort ist ja. Wir können das Array als WHERE-Bedingung abfragen, indem wir das Array in einen String konvertieren.
Wenn wir beispielsweise ein Array mit dem Namen $ages haben, das das abzufragende Alter enthält, können wir das Array mit der folgenden Methode in einen String konvertieren und abfragen: #🎜🎜 #
$ages = array(18, 20, 22); $ages_str = implode(",", $ages); $sql = "SELECT * FROM customers WHERE age IN ($ages_str)";
$ages = array(18, 20, 22); $values = implode(",", array_fill(0, count($ages), "?")); $sql = "SELECT * FROM customers WHERE age IN ($values)"; $stmt = $mysqli->prepare($sql); foreach ($ages as $i => $age) { $stmt->bind_param('i', $ages[$i]); } $stmt->execute(); $result = $stmt->get_result(); while ($row = $result->fetch_assoc()) { echo $row['name'] . " " . $row['age']; } $stmt->close();
Das obige ist der detaillierte Inhalt vonKönnen Arrays in der Where-Bedingung von PHP erscheinen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!