簡體   English   中英

如何在其他類中運行數據庫類方法?

[英]How to run database class methods inside other classes?

我剛接觸PHP中的類,我才意識到,在大多數類方法中,我需要執行一些mysql查詢。 我有另一個處理我的連接和查詢的類,但是應該如何從其他類中調用該類呢? 如果我所有的類都依賴於我的DB類,這是否會破壞使用類的目的?

這通常可以通過Singleton或Factory模式解決...

當需要使用數據庫時,可以搶占應用程序的db對象:

$db = Site::getDb();   // singleton
$db->exec('update t set i = i + 1');

getDb返回一個靜態實例。

要么:

 $db = Db::getDb('dsn');   // factory
 $db->exec('update t set i = i + 1');

返回一個靜態實例(如果存在),或為該dsn創建一個新的數據庫句柄...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM