Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
lors de l'utilisation des DBAdapter j'ai pu trouver dans la doc l'exemple suivant :
[lang=php]$adapter = new Zend\Db\Adapter\Adapter($driverConfig);
$qi = function($name) use ($adapter) { return $adapter->platform->quoteIdentifier($name); };
$fp = function($name) use ($adapter) { return $adapter->driver->formatParameterName($name); };
$sql = 'UPDATE ' . $qi('artist')
. ' SET ' . $qi('name') . ' = ' . $fp('name')
. ' WHERE ' . $qi('id') . ' = ' . $fp('id');
/** @var $statement Zend\Db\Adapter\Driver\StatementInterface */
$statement = $adapter->query($sql);
$parameters = array(
'name' => 'Updated Artist',
'id' => 1
);
$statement->execute($parameters);Je le trouve beaucoup moins sympathique que l'utilisation du prepare, bind et execute que nous fournis PDO.
Ainsi j'aimerai savoir s'il y a un moyen de faire coexister un objet pdo et un objet dbadapter au sein d'une application Zend de manière propre ?
En vous remerciant.
Dernière modification par imsouf (26-12-2012 16:58:33)
Hors ligne
Tu peux te créer des raccourcis.
[lang=php]
...
public function beginTransaction()
{
return $this->adapter->getDriver()->getConnection()->beginTransaction();
}
public function query($sql)
{
return $this->adapter->query($sql);
}
public function getAdapter()
{
return $this->adapter;
}
public function commit()
{
return $this->adapter->getDriver()->getConnection()->commit();
}
public function rollback()
{
return $this->adapter->getDriver()->getConnection()->rollBack();
}
public function quoteValue($v)
{
return $this->adapter->platform->quoteValue($v);
}
public function quoteIdentifier($i)
{
return $this->adapter->platform->quoteIdentifier($i);
}
...Hors ligne