Validation 什么';在Kohana 3中,将附加POST变量传递到验证规则的最佳方法是什么?

Validation 什么';在Kohana 3中,将附加POST变量传递到验证规则的最佳方法是什么?,validation,kohana,kohana-3,Validation,Kohana,Kohana 3,我正在验证一些POST数据。我需要做的验证之一是注册码,它基于另一个POST变量——IMEI编号 在我的帖子数据中有两个字段,register\u imei和register\u code。我的代码当前如下所示: $post = Validate::factory($_POST); $post->rule('register_imei', 'not_empty') ->rule('register_imei', 'exact_length', array(15))

我正在验证一些POST数据。我需要做的验证之一是注册码,它基于另一个POST变量——IMEI编号

在我的帖子数据中有两个字段,
register\u imei
register\u code
。我的代码当前如下所示:

$post = Validate::factory($_POST);

$post->rule('register_imei', 'not_empty')
     ->rule('register_imei', 'exact_length', array(15))
     ->rule('register_imei', 'some_class::luhn_check');

$post->rule('register_code', 'not_empty')
     ->rule('register_code', 'some_class::valid_registration_code', array($_POST['register_imei']));
但是,我不确定从raw POST数组字段传入变量是否正确,因为它可能为空或未设置。我已经为上面的
register\u imei
添加了验证规则,这样做安全吗

我已经为上面的register\u imei添加了验证规则这一事实是否使其安全

在调用
check()
方法之前,不会进行任何验证

要解决您的问题,请使用:

Arr::get($_POST, 'register_imei', NULL);
如果数组中未设置键,则返回第三个参数作为默认参数