升级本地化

文档

已更改的内容

  • 在 CI4 中,语言文件将语言行作为数组返回。

升级指南

  1. Config/App.php 中指定默认语言

    <?php
    
    namespace Config;
    
    use CodeIgniter\Config\BaseConfig;
    
    class App extends BaseConfig
    {
        // ...
    
        public string $defaultLocale = 'en';
    
        // ...
    }
    
  2. 现在将语言文件移动到 app/Language/<locale>

  3. 之后,您必须更改语言文件中的语法。在下面的代码示例中,您将看到文件中的语言数组应该是什么样子。

  4. 从每个文件中删除语言加载器 $this->lang->load($file, $lang);

  5. echo lang('Errors.errorEmailMissing'); 替换加载语言行的 $this->lang->line('error_email_missing') 方法。

代码示例

CodeIgniter 版本 3.x

<?php

// error.php
$lang['error_email_missing']    = 'You must submit an email address';
$lang['error_url_missing']      = 'You must submit a URL';
$lang['error_username_missing'] = 'You must submit a username';

// ...

$this->lang->load('error', $lang);
echo $this->lang->line('error_email_missing');

CodeIgniter 版本 4.x

<?php

// Errors.php
return [
    'errorEmailMissing'    => 'You must submit an email address',
    'errorURLMissing'      => 'You must submit a URL',
    'errorUsernameMissing' => 'You must submit a username',
    'nested'               => [
        'error' => [
            'message' => 'A specific error message',
        ],
    ],
];

// ...

echo lang('Errors.errorEmailMissing');