J'ai un appel à un modèle qui est juste une classe standard (ne pas étendre zend_db_table). Je fais un select et je veux avoir la possibilité d'exclure un ensemble d'identifiants qui serait transmis en tant que variable.L'adaptateur zend_db n'est pas dans/zend_db_expr
Je curently les éléments suivants:
public function getItemsBySection($section, $excluded_ids=null){
//handle this as special case (although only case at this point)
if(is_array($excluded_ids) and count($excluded_ids)>0){
$x=1;
foreach($excluded_ids as $key=>$value){
if($x==1){
$not_in=$value;
}else{
$not_in.=','.$value;
}
$x++;
}
}
if($section=='feed_supplies'){
$sql='select * from items where is_feed_supply=1';
if($not_in){
$sql.=' and id not in ('.$not_in.')';
}
}
echo $sql . '<br/>';
$results=$this->_db->fetchAll($sql);
mais je me demandais s'il y a un moyen d'utiliser Zend_Db_Expr ou une autre concstruct pour gérer l'exclusion de certains éléments? Je ne suis pas un gestionnaire d'erreur comme si c'est un entier etc ...
Personnellement, je ne suis pas très fan de la syntaxe de zend_db_select mais je pourrais être persuadé s'il corrige des choses comme ça (je veux voir Doctrine2).
grâce
convenu - je pense que je venais d'écrire une boucle foreach et juste sorti chemin - ranges-certainement – timpone