首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 入門

PHP MySQLi 函數完整參考手冊

     編輯:PHP 入門

PHP MySQLi 函數完整參考手冊


簡介

MySQLi = MySQL Improved。MySQLi 擴展提供了改進的、物件導向與程序式介面,用於存取 MySQL 4.1.13 或更新版本的資料庫伺服器。


安裝與設定

編譯 PHP 時需加入 --with-mysqli 選項。PHP 5.0.0 引入,PHP 5.3.0 內建 MySQL Native Driver (mysqlnd)。詳細安裝請參考 官方文檔。


常用函數分類速查

函數說明
mysqli_connect()開啟新的 MySQL 伺服器連接(程序式)。
mysqli_real_connect()開啟新連接(支援更多選項)。
mysqli_close()關閉先前開啟的連接。
mysqli_query()執行針對資料庫的查詢。
mysqli_prepare()準備執行 SQL 語句(預處理)。
mysqli_stmt_bind_param()綁定參數到預處理語句。
mysqli_stmt_execute()執行預處理語句。
mysqli_fetch_assoc()取得一行作為關聯陣列。
mysqli_fetch_array()取得一行作為關聯、數字或兩者兼有的陣列。
mysqli_fetch_all()取得所有行(PHP 5.3+)。
mysqli_num_rows()返回結果集行數。
mysqli_affected_rows()返回前一次操作影響的行數。
mysqli_insert_id()返回最後查詢自動生成的 ID。
mysqli_real_escape_string()轉義 SQL 字符串中的特殊字符。
mysqli_autocommit()開啟/關閉自動提交。
mysqli_commit()提交事務。
mysqli_rollback()回滾事務。
mysqli_error()返回最後錯誤描述。
mysqli_errno()返回最後錯誤代碼。
mysqli_set_charset()設定預設客戶端字符集。
mysqli_multi_query()執行多條查詢。
mysqli_next_result()準備多查詢的下一個結果集。
mysqli_free_result()釋放結果記憶體。
mysqli_ping()檢查連接,若斷開嘗試重連。
mysqli_ssl_set()建立 SSL 安全連接。
mysqli_get_client_info()返回 MySQL 客戶端庫版本。
mysqli_get_server_info()返回 MySQL 伺服器版本。

物件導向風格範例

<?php
$mysqli = new mysqli("localhost", "user", "password", "database");
if ($mysqli->connect_errno) {
    die("連接失敗: " . $mysqli->connect_error);
}
$stmt = $mysqli->prepare("SELECT id, name FROM users WHERE email = ?");
$stmt->bind_param("s", $email);
$stmt->execute();
$result = $stmt->get_result();
while ($row = $result->fetch_assoc()) {
    echo $row['name'] . '<br>';
}
$stmt->close();
$mysqli->close();
?>

錯誤處理建議

  • 啟用 mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT) 讓錯誤拋出異常。
  • 生產環境避免直接輸出錯誤訊息,記錄至日誌。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved