私はmysql_queryを使用していて、今はPDOを使用して始めています。これは素晴らしいです!
しかし、古いスクリプトでは、動的クエリビルダーを構築していたため、PDOを使用してそれを移植するのに苦労しています。
誰かが私にいくつかの方向性を与えることができればそれは素晴らしいことです!
これがその理論です。
- 私はの配列を持っています
- DBフィールドと値(挿入時)。
- クエリ文字列を作成して、有効なPDOトランザクションを生成します
これが私がやろうとしていることの一部です。
public $dbFields; // This is an array of the fields plus VALUES
public function select($where, $limit) {
// This is what I **had** before
$query = "SELECT ". implode(", ", $this->dbFields) ." FROM ". $this->table." WHERE ". $where ." ". $limit."";
// Now i need to convert that to PDO
$this->connection->beginTransaction();
# START Query
$select = $this->connection->prepare("SELECT {$this->fieldNames} FROM {$this->table}");
// I need to BIND my params and values, but i'm not sure the best route to take when I have a WHERE clause that includes, "AND" / "OR" operators.
# EXECUTE the query
$select->execute();
$this->connection->commit();
}
これは私が以前持っていたものです
$results = $db->select("userId = 111 OR userId = 222");
しかし、私がする必要があると思っているのは、もっと次のようなものを使用することです
$results = $db->select(array("userId"=>111, "userId"=>222));
私はこれが難しい注文であることを知っています、そして私がやろうとしていることにそれが理にかなっていることを願っています、しかしこれらのクエリを構築しようとする試みの助けは大いにありがたいです。