2010-03-16 8 views
2

Je veux montrer seulement les mots avec minimum 4 caractères, en fait je peux limiter les hits et montrer seulement les mots avec min. 100 hits - mais comment puis-je définir un min. la longueur du personnage? Je vous remercie!Minimum 4 caractères ou ne rien montrer - PHP

function sm_list_recent_searches($before = '', $after = '', $count = 20) { 
// List the most recent successful searches. 
    global $wpdb, $table_prefix; 
    $count = intval($count); 
    $results = $wpdb->get_results(
     "SELECT `terms`, `datetime` 
     FROM `{$table_prefix}searchmeter_recent` 
     WHERE 100 < `hits` 
     ORDER BY `datetime` DESC 
     LIMIT $count"); 
    if (count($results)) { 

     foreach ($results as $result) { 
      echo '<a href="'. get_settings('home') . '/search/' . urlencode($result->terms) . '">'. htmlspecialchars($result->terms) .'</a>'.", "; 
     } 

    } 
} 

Répondre

1

Si vous utilisez mySQL:

WHERE 100 < `hits` AND CHAR_LENGTH('yourField') > 4 
+0

plussing cela, comme il était d'abord et je mélange de longueur avec char_length – Gordon

2

De l'MySql manual:

CHAR_LENGTH (str) Renvoie la longueur de la chaîne str, mesurée en caractères. Un caractère multi-octets compte comme un seul caractère. Cela signifie que pour une chaîne contenant cinq caractères à deux octets, longueur() retourne 10, alors que CHAR_LENGTH() 5.

Vous ajoutez

where(char_length(terms) > 4))