【问题标题】:Translating CodeIgniter's form validation error messages翻译 CodeIgniter 的表单验证错误消息
【发布时间】:2012-02-22 14:56:06
【问题描述】:

是否可以在不涉及系统文件的情况下翻译 CodeIgniter 的表单验证错误消息?

【问题讨论】:

标签: php codeigniter localization internationalization validation


【解决方案1】:

如果您正在谈论实际翻译成另一种语言,可以通过将配置值 $config['language'] 设置为您想要的语言来完成。如果您不想更改实际的 config.php 文件,您可以通过使用 Config 对象的 set_item() 函数来完成,如下所示:

$this->config->set_item('language', 'spanish');

见:CodeIgniter Doc for the Config Class

这假设您的language 目录中有一个西班牙语目录,其中至少包含form_validation_lang.php 文件。

但是,如果您只想为 Form_validation 对象创建自定义消息,您可以从system\language 目录复制form_validation_lang.php 文件并将其移动到application\language 目录。您现在可以编辑新语言文件以使其反映您想要的任何不同的消息。您还可以通过从application/language 目录中删除文件轻松恢复为默认消息。

如果您不想碰language 文件,另一种方法是手动覆盖消息。您可以通过 Form_validation 库对象来做到这一点,如下所示:

$this->form_validation->set_message('required', 'This is a required item!');`

见:CodeIgniter Doc for the Form Validation Class

【讨论】:

【解决方案2】:

如果您需要为某个特定规则的特定字段设置自定义错误消息,请使用 set_rules() 方法:

    $this->form_validation->set_rules('field_name', 'Field Label', 'rule1|rule2|rule3',
        array('rule2' => 'Error Message on rule2 for this field_name')
);

这将独立解决您的所有领域问题。 :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-30
    • 1970-01-01
    • 2019-08-18
    相关资源
    最近更新 更多