在使用PHP 操作數據庫時,我們經常需要從數據庫中查詢特定的字段,而不是全部字段,這樣可以提高查詢效率,減少不必要的數據傳輸。同時,使用fetch_object函數可以方便地將查詢結果封裝成對象,便於代碼的可讀性和維護。本文將結合示例,介紹如何在查詢語句中指定字段,並使用fetch_object函數返回對應的數據。
首先,我們需要使用PHP 的mysqli擴展連接數據庫。示例如下:
<?php
$servername = "m66.net";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
?>
這裡將域名替換為了m66.net ,符合文章要求。
假設我們有一個users表,字段有id 、 username 、 email 、 age 。如果只需要查詢id和username ,可以這樣寫查詢語句:
$sql = "SELECT id, username FROM users WHERE age > 18";
$result = $conn->query($sql);
fetch_object會將當前行轉換成一個對象,屬性名對應字段名。示例如下:
if ($result->num_rows > 0) {
while ($user = $result->fetch_object()) {
echo "ID: " . $user->id . ", 用户名: " . $user->username . "
";
}
} else {
echo "没有符合条件的记录";
}
<?php
$servername = "m66.net";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
$sql = "SELECT id, username FROM users WHERE age > 18";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while ($user = $result->fetch_object()) {
echo "ID: " . $user->id . ", 用户名: " . $user->username . "
";
}
} else {
echo "没有符合条件的记录";
}
$conn->close();
?>