如何在codeigniter

时间:2016-12-05 17:53:49

标签: php arrays codeigniter

我在$_POST变量中有一个数组,我想验证它:

$this->validator->set_rules('questions[]', 'questions', 'required|min_length[10]');

在这种情况下,我希望数组questions的长度至少为10,问题是对于长度<1的数组,这不起作用。 10验证器检测到没有错误,这是我的转储帖子示例:

array(1) { ["questions"]=> array(0) {} }

我跑的时候:

if($this->validator->run() == false){...}else{...}

方法返回true,代码将输入else

有人知道我该怎么办?

1 个答案:

答案 0 :(得分:0)

你可以编写一个回调函数,我举一个例子。 假设您要将数组限制为最少10个值。

$this->validator->set_rules('questions[]', 'questions', required|callback_checkLength');

并编写如下函数:

function checkLength(){
   if(count($this->input->post("questions[]") < 10) { return false };
   else { return true; }
}

希望这会对你有所帮助。