首頁 >資料庫 >mysql教程 >如何從 PHP 中的不同類別正確存取 MySQLi 資料庫連線?

如何從 PHP 中的不同類別正確存取 MySQLi 資料庫連線?

Barbara Streisand
Barbara Streisand原創
2024-12-08 15:12:111019瀏覽

How to Properly Access a MySQLi Database Connection from Different Classes in PHP?

在PHP 中使用另一個類別中的MySQLi:詳細分解

在此查詢中,使用者在從PHP 轉換後已將MySQL 升級到MySQLi 5.6 至7.0。在遵循「在其他類別中使用 MySQLi」指南後,他們在嘗試從不同類存取資料庫連線時遇到內部伺服器錯誤 500。

要了解錯誤,讓我們檢查使用者的 PHP 程式碼。它們有三個類別:用於建立 MySQLi 連接的資料庫類別、嘗試存取此連接的 MyAPI 類別以及進行實際資料庫查詢的單獨函數。

錯誤分析

問題是由程式碼中的幾個基本問題引起的:

  1. 不正確的類別層次結構:從資料庫類別擴展使用者類別是一種不正確的方法。
  2. 冗餘資料庫類別:資料庫類別本質上沒有任何實際用途,並且不必要地使程式碼。

解決方案

要解決這些問題,建議執行以下步驟:

  1. 刪除數據庫Class:由於它沒有提供重要的功能,因此Database類別應該是
  2. 建立單一 $db 實例:使用 vanilla MySQLi 建立 $db 的單一實例。
  3. 將 $db 作為建構子參數傳遞:在每個需要資料庫連接的類別中,將 $db 實例作為建構子參數。

這是改進的PHP 程式碼例如:

database.php

myapi.

myapi.

app.php

有了這些修改後,使用者應該能夠建立正確的 MySQLi 連線並執行來自不同類別的資料庫查詢。

以上是如何從 PHP 中的不同類別正確存取 MySQLi 資料庫連線?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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