- $filtre = 'match('.$a.', '.str_replace('\"', '"', $valeur).')';
- $op = '';
- } else if ($op == 'LIKE') {
- $valeur = str_replace(array('\"', '_', '%'), array('"', '.', '.*'), preg_quote($valeur));
- $filtre = 'match('.$a.', '.$valeur.')';
- $op = '';
- } else if ($op == '=') {
- $op = '==';
- } else if ($op == 'IN') {
- $filtre = 'in_array('.$a.', array'.$valeur.')';
- $op = '';
- } else if (!in_array($op, array('<','<=', '>', '>='))) {
- spip_log('operateur non reconnu ' . $op); // [todo] mettre une erreur de squelette
+ $filtre = 'match(' . $a . ', ' . str_replace('\"', '"', $valeur) . ')';