2014-04-20 1 views
1

CodeIgniter possède de nombreuses règles de validation mais existe-t-il une règle pour vérifier si la valeur d'un certain champ est présente dans un tableau (donnée comme paramètre de la règle de validation)?Valeur dans le tableau Règle de validation CodeIgniter

Par exemple:

$possible_values = array('beer', 'soda', 'wine', 'water'); 

$this->form_validation->set_rules('drink', 'Drink', 'required|trim|found_in_array[possible_values]'); 

Répondre

1

vous pouvez utiliser callback_function_name comme si,

$this->form_validation->set_rules('drink', 'Drink', 'callback_customInArray'); 


public function customInArray($str) 
    { 
     $possible_values = array('beer', 'soda', 'wine', 'water'); 
     if(in_array($str, $possible_values){return true;} 
     return false; 
    } 

en savoir plus sur ce que dans CI Form Validation

1

Non il n'y a pas une règle de validation pour ce cas précis.

Mais vous pouvez créer vos propres règles de validation: Regardez here (Codeingiter UserGuide)

i.e. .:

$this->form_validation->set_rules('username', 'Username', 'callback_is_inArray[someValues]'); 

public function is_inArray($str, $values) { 
    return in_array($str, $values); 
} 
Questions connexes