php 內置函數可用于執行數據庫查詢,包括:mysqli_query():執行查詢并返回結果。pdostatement:準備查詢并綁定參數以防止 sql 注入。mysqli_affected_rows():獲取受查詢影響的行數(使用 mysqli)。pdostatement::rowcount():獲取受查詢影響的行數(使用 pdo)。mysqli_close():關閉 mysqli 數據庫連接。pdo:腳本執行完畢后自動關閉 pdo 連接。
使用 PHP 內置函數執行數據庫查詢
PHP 提供了大量內置函數,可用于執行數據庫查詢。本文將介紹如何使用一些常用的 PHP 數據庫內置函數,并提供實際示例。
需要的工具:
PHP 7 或更高版本
MySQL 或其他支持 PDO 的數據庫
數據庫連接信息
連接到數據庫:
$servername = "localhost"; $username = "username"; $password = "password"; $dbname = "databasename"; try { $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(PDOException $e) { die("連接失敗:" . $e->getMessage()); }
登錄后復制
使用 mysqli_query() 函數查詢:
$sql = "SELECT * FROM users"; $result = mysqli_query($conn, $sql);
登錄后復制
獲取查詢結果:
if ($result) { while($row = $result->fetch(PDO::FETCH_ASSOC)) { echo "ID: " . $row["id"]. " 姓名: " . $row["name"]. "<br>"; } }
登錄后復制
使用 pdo 查詢數據:
該函數的使用方法與 mysqli_query() 函數類似,但需要事先準備一個 PDOStatement 對象。
$stmt = $conn->prepare($sql); $stmt->execute(); while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) { echo "ID: " . $row["id"]. " 姓名: " . $row["name"]. "<br>"; }
登錄后復制
使用 pdo 進行準備查詢:
準備查詢允許您綁定參數以防止 SQL 注入。
$sql = "INSERT INTO users (name, email) VALUES (?, ?)"; $stmt = $conn->prepare($sql); $stmt->execute([$name, $email]);
登錄后復制
使用 mysqli_affected_rows() 獲取受影響的行數:
$num_rows = mysqli_affected_rows($conn); echo "受影響的行數:" . $num_rows;
登錄后復制
使用 PDO 獲取受影響的行數:
$num_rows = $stmt->rowCount(); echo "受影響的行數:" . $num_rows;
登錄后復制
使用 mysqli_close() 關閉數據庫連接:
mysqli_close($conn);
登錄后復制
使用 PDO 關閉數據庫連接:
不需要手動關閉 PDO 連接。當腳本執行完畢后,它會自動關閉。