0

ショッピング バスケット クラスがあり、その中でデータベースにクエリを実行したいのですが、理解できません。

構築時にデータベースに接続し、破壊時に接続を閉じたいだけです。

クラス内で呼び出すクエリごとに新しい接続を作成する必要はありませんか?

さらに、mysqliを使用することをお勧めします

前もって感謝します

4

2 に答える 2

1

あなたができることの簡単な例:

class ShoppingBasket{

    protected $db = null;

    public function __construct($db){
        $this->db = $db;
    }

    public function getBasketItems(){
        return $this->db->query("SELECT id, name, price FROM shopping_basket");
    }

}

$db = new PDO($dsn, $user, $password);
$shoppingBasket = new ShoppingBasket($db);
$items = $shoppingBasket->getBasketItems();
于 2012-11-28T16:42:49.610 に答える
1

おそらく最善の策は、DB 接続または DB 抽象化オブジェクトをコンストラクター (依存性注入) に渡すことであり、DB インスタンス化ロジックをクラスに追加しようとすることを心配する必要はありません。

于 2012-11-28T16:28:19.910 に答える