zend-framework zend-db

zend framework - Cómo usar múltiples condiciones en una declaración de actualización con Zend_Db y QuoteInto



zend-framework zend-db (3)

Usando Zend Framework, ¿hay una manera de pasar múltiples condiciones a una declaración de actualización usando el método quoteInto? He encontrado algunas referencias a este problema, pero estoy buscando una forma compatible sin tener que extender Zend_Db o sin concatenación.

$db = $this->getAdapter(); $data = array(''profile_value'' => $form[''profile_value'']); $where = $db->quoteInto(''user_id = ?'', $form[''id'']) . $db->quoteInto('' AND profile_key = ?'', $key); $this->update($data, $where);

Referencias


Desde 1.8 puedes usar:

$where = array( ''name = ?'' => $name, ''surname = ?'' => $surname ); $db->update($data, $where);


Puedes usar un tipo de array para tu $where argumento. Los elementos se combinarán con el operador AND :

$where = array(); $where[] = $this->getAdapter()->quoteInto(''user_id = ?'', $form[''id'']); $where[] = $this->getAdapter()->quoteInto(''key = ?'', $key); $this->update(array(''value'' => $form[''value'']), $where);


Sólo refrescando la respuesta anterior

$data = array(''value'' => $form[''value'']); $where = array(); $where[] = $this->getAdapter()->quoteInto(''user_id = ?'', $form[''id'']); $where[] = $this->getAdapter()->quoteInto(''key = ?'', $key); $this->update($data, $where);