查询与遍历要点
- mysqli_query($conn, $sql) 执行查询,返回结果对象
- mysqli_num_rows($result) 看命中几行,先判空再遍历
- mysqli_fetch_assoc 每次取一行关联数组,循环读完
- 字段值用 $row['列名'] 取,列名要和 SQL 里一致
- 读完调 mysqli_free_result 释放结果集,省内存
- SELECT 只查要用的列,别写 SELECT * 拖慢查询
查询与遍历示例
$conn = mysqli_connect("127.0.0.1", "app_user", "app_pass", "shop_db");
$sql = "SELECT order_id, amount, status FROM orders WHERE user_id = 1";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) != 0) {
while ($row = mysqli_fetch_assoc($result)) {
echo "订单:" . $row["order_id"] . " 金额:" . $row["amount"] . "\n";
}
} else {
echo "没查到";
}
mysqli_free_result($result);
mysqli_close($conn);
避坑提醒:fetch_assoc 取关联数组最省心;若用 fetch_row 拿到的是数字下标,取值时容易数错列顺序。