首頁 >後端開發 >php教程 >如何在 PHP 中用 MySQLi 取代 mysql_result()?

如何在 PHP 中用 MySQLi 取代 mysql_result()?

Linda Hamilton
Linda Hamilton原創
2024-12-07 20:10:14147瀏覽

How to Replace mysql_result() with MySQLi in PHP?

MySQLi 等效的mysql_result()

將PHP 程式碼從mysql 轉換到MySQLi 時,缺少兩個sql_result() 的等效項可能缺少會造成問題一個小障礙。此函數允許開發人員從查詢結果中檢索單一值。

解:

儘管缺乏直接等效項,但自訂函數可以複製以下函數mysql_result():

function mysqli_result($res, $row = 0, $col = 0) {
    $numrows = mysqli_num_rows($res);
    if ($numrows && $row <= ($numrows - 1) && $row >= 0) {
        mysqli_data_seek($res, $row);
        $resrow = (is_numeric($col)) ? mysqli_fetch_row($res) : mysqli_fetch_assoc($res);
        if (isset($resrow[$col])) {
            return $resrow[$col];
        }
    }
    return false;
}

這個函數:

  • 複製mysql_result() 的行為。
  • 如果請求越界(空結果、不存在的行或列),則傳回 false。
  • 如果不是,則假定第 0 行和第 0 列(要傳遞的值少一個)指定。
  • 允許欄位或欄位名稱的數字偏移。

範例:

要使用函數,只要將 mysql_result()呼叫替換為以下:

$blarg = mysqli_result($r, 0, 'blah');

注意:

此自訂函數在處理單一結果和欄位時表現出色,可實現簡潔的程式碼。不過,對於較大的資料集,仍然建議使用更有效率的 fetch_assoc() 方法。

以上是如何在 PHP 中用 MySQLi 取代 mysql_result()?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn