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