Ho costruito una classe di adattatori PDO perché pensavo che, al momento, sarebbe stata una buona idea. Dopo aver combattuto con esso, non ha senso per me. Il design di PDO non è il modo in cui ti impedisce di dover creare adattatori speciali per un determinato database?
Per una connessione, capisco, ma mi sembra che stia sostituendo PDO con la mia versione di PDO.
Non capisco perché avrei bisogno di questo ulteriore livello di astrazione.
Ecco alcuni esempi:
public function prepare($sql, array $options = array()) {
$this->connect();
try {
$this->statement = $this->connection->prepare($sql,
$options);
return $this;
}
catch (PDOException $e) {
throw new RunTimeException($e->getMessage());
}
}
public function execute(array $parameters = array()) {
try {
$this->getStatement()->execute($parameters);
return $this;
}
catch (PDOException $e) {
throw new RunTimeException($e->getMessage());
}
}
public function countAffectedRows() {
try {
return $this->getStatement()->rowCount();
}
catch (PDOException $e) {
throw new RunTimeException($e->getMessage());
}
}
public function getLastInsertId($name = null) {
$this->connect();
return $this->connection->lastInsertId($name);
}
EDIT: ho trovato questo. Penso che potrei essere in overkill. Potrei avere questa classe per altre cose, ma non un PDO nativo senza una ragione più convincente.