1

CodeIgniter には多くの検証ルールがありますが、特定のフィールドの値が配列に存在するかどうかをチェックするルールはありますか (検証ルールのパラメーターとして指定)?

例えば:

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

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

3 に答える 3

1

いいえ、その特定のケースの検証ルールはありません。

ただし、独自の検証ルールを作成することもできます:こちらをご覧ください (Codeingiter UserGuide)

いいえ:

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

public function is_inArray($str, $values) {
   return in_array($str, $values);
}
于 2014-04-20T23:28:47.533 に答える
1

あなたはcallback_function_nameそのように使うことができます、

$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;
    }

詳細については、CI フォームの検証を参照してください。

于 2014-04-20T23:30:43.997 に答える
1

in_listcodeigniter フォーム検証ルールを使用できます。

$this->form_validation->set_rules('drink', 'Drink', 'in_list[beer,soda,wine,water]');
于 2018-11-11T08:48:16.097 に答える