【发布时间】:2017-07-04 22:02:56
【问题描述】:
好的,所以我一直在寻找这个问题,但找不到可以向我解释这个问题的答案(或者至少是一些直接的答案)。
我一直在使用 CodeIgniter 3.x 表单验证库,所以我有一些这样的数据:
// Just example data
$input_data = [
'id' => 1,
'logged_in' => TRUE,
'username' => 'alejandroivan'
];
然后,当我想验证它时,我使用:
$this->form_validation->set_data($input_data);
$this->form_validation->set_rules([
[
'field' => 'id',
'label' => 'The ID to work on',
'rules' => 'required|min_length[1]|is_natural_no_zero'
],
[
'field' => 'username',
'label' => 'The username',
'rules' => 'required|min_length[1]|alpha_numeric|strtolower'
],
[
'field' => 'logged_in',
'label' => 'The login status of the user',
'rules' => 'required|in_list[0,1]'
]
]);
if ( $this->form_validation->run() === FALSE ) { /* failed */ }
所以我在这里有一些问题:
-
label密钥真的有必要吗?我没有以任何方式使用表单验证自动生成的错误消息,我只想知道数据是否通过了验证。如果我忽略它,其他东西会失败吗?由于这将是一个 JSON API,我真的不想打印该字段的描述,只是我已经定义的静态错误。 - 在我的示例的
username字段中,required规则会检查长度吗?换句话说,min_length在这种情况下是可选的吗?alpha_numeric... 的同样问题是空字符串被认为是字母数字吗? - 在
logged_in字段(布尔值)中,如何检查TRUE或FALSE?in_list[0,1]就足够了吗?我也应该包括required吗?有没有类似is_boolean的东西?
提前谢谢你。
【问题讨论】:
-
我还要指出,如果您愿意,您可以轻松扩展 form_validation 库并添加 is_boolean 规则。这实际上并不是一个糟糕的主意。
标签: codeigniter validation codeigniter-3