0

PDO を使用すると、MySQL、SQLITE などのさまざまなドライバーに接続できます。これをラッパーに実装する良い方法は何だろうと思っています。

私の最初のアイデアは、(指定されたドライバーに応じて) PDO オブジェクトを作成する Factory パターンを作成し、その PDO オブジェクトをラッパーに単純に注入することでした。

このようなもの:

<?php

class db
{
    private $db;

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


class factory {
    public function create($driver = 'mysql')
    {
        switch ($driver) {
        ...
        }
    }
}

ラッパーを可能な限り柔軟で再利用可能にするためのより良い提案はありますか? または、提案されたソリューションは良いものですか?

4

1 に答える 1

1

CRUD コマンドは、データベースに応じて異なる必要があります。MySQL と SQLITE には、テーブルの作成/変更、行の置換、および行の更新の方法に小さな違いがあります。それらを同じファイルに含める場合は、MySQL と SQLITE の両方に同じコマンドを送信しないように注意してください。

于 2013-03-09T15:39:20.430 に答える