CodeIgniter类库之Validation Class

本文介绍CodeIgniter框架中验证库的使用方法,包括如何加载验证库、设置验证规则及使用预定义规则等。同时,还提供了自定义验证规则的具体实现案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在进行BS编程时,我们时常需要对客户提交的数据进行验证。每种脚本语言都有一套自己的验证模式,CodeIgnite也提供了一套相当好用的类库 -- Validation Class。

和使用其他类库一样,在使用Validation Class之前需要将其加载。

$this->load->library("validation");

加载之后我们就可以使用$this->validation对其进行引用了。有些朋友会问了:“它怎么知道我要验证哪些数据,以及按何规则进行验证呢?”这正是我们下面要说的。

刚刚加载的Validation Class作不了任何事情,即便是调用它的run方法,其返回值始终是FALSE,因为我们并没有给它指定验证规则。CodeIgniter预定义了一些规则引用。

规则

参数

说明

举例

required必填字段 
matches与指定的参数相匹配matches[form_item]
min_length指定最小长度min_length[6]
max_length指定最大长度max_length[12]
exact_length指定数值精度exact_length[4]
alpha输入必须是字母字符 
alpha_numeric输入必须是字母数字字符 
alpha_dash输入必须是字母字符,或是下划张和减号 
numeric输入必须是纯数字字符 
valid_email输入必须是有效的电子邮件地址 
valid_ip输入必须是有效的IP地址 

假设有一个填写用户注册信息的页面需要验证,此页面上有一个名为user的输入框,一个名为password的密码输入框和一个名为confirm的密码确认框可以,我们可以如下定义验证规则:

$rule['user'] = "reguired";
$rule['password'] = "required|min_length[6]";
$rule['confirm'] = "required|matches[password]";
$this->validation->set_rules($rule);

定义好验证规则之后,我们就可以调用其run方法,来进行数据验证了。

if ($this->validation->run() == FALSE) {
//验证失败
}
else {
//验证成功
}

使用$this->validation->error_stromg可以得到验证失败后的提示信息。

上面讲到的都是利用CodeIgniter事先定义好的验证规则,假如说我们想自定义验证规则应该如何做呢?这个也很简单。我们只需要自己编写一个验证函数,并将其指定给validation即可。

//自定义的验证用户名的函数,注意函数名不要加“callback_”
function username_check($str)
{
if ($str == "admin") {
$this->validation->set_message("username_check", 'The %s field can not be the word "admin"');
retrun FALSE;
}
else {
TRUE;
}
}
 
 
$rule['user'] = "callback_username_check"; //验证函数名前要加“callback_”
$this->validation->set_rules($tule);

版权声明:本文为博主原创文章,未经博主允许不得转载。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值