为表单助手和表单验证类写入一次输入标签

时间:2012-11-13 22:01:01

标签: php forms codeigniter continuous-integration validation

有没有办法使用我已经放入form_validation规则中的值来创建html表单标签?实施例...

控制器:

$config = array('somerule' => 
                      array('label' => 'Nick name',
                            'field' => 'nickname'
                            'rules' => 'trim|required|max_length[255]')
               )

查看:

<?php echo form_open(); ?>
<?php echo form_label('Nick name', 'nickname'); ?>
<?php echo form_input('nickname', set_value('nickname', $data['nickname'], array('id'=>'nickname')); ?>
</form>

我需要在验证规则和html视图中写“Nick name”。是否有一个像$this->form_validation->get_label('nickname')这样的神奇函数可以给我正确的标签/语言,而不是再次在视图中写“昵称”?

谢谢你们!

1 个答案:

答案 0 :(得分:0)

为什么不使用CI Language class

制作您自己的语言文件,例如form_lang.php并将其放在application/language/english文件夹中(假设您的默认语言为english,在配置中定义)。

以这种模式编写您的语言短语:

$lang['index']="value";

在控制器中加载一次语言文件

$this->lang->load('form');

就是这样! 您可以在控制器(验证配置数组)和加载的视图中使用$this->lang->line('index')

在您的视图中使用$this->lang->line('index')已由控制器加载。