PHP - 如何将网站翻译成多种语言?

Sar*_*nHB 3 php translation internationalization

我有一个目前用英语的网站; 我希望能够在用户点击其他语言时切换到其他语言(网站上有很少的国家/地区标志图标).我目前正在尝试的方式是使用数组,例如:

$english = array('index',
           array('h1' => 'this is some h1 text', 
                 'h2' => 'this is some h2 text'));

$japanese = array('index',
            array('h1' => '????????',
                  'h2' => ??????'));


print $english[index][h1];
print $japanese[index][h2];
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,如果我使用单独的语言为每个页面执行此操作,那将是一个疯狂的代码量.我可以尝试其他什么方法?

Pro*_*777 5

鉴于您正在寻找最终将获得l10n支持的完整i18n支持,我建议您在支持这些开箱即用的PHP框架中编写您的页面.

就个人而言,我只使用Symfony框架进行了翻译.它们在数据库中使用i18n表扩展的内容组合,以及用于接口翻译的XLIFF文件.一旦设置它就相当透明,并且使用框架避免了必须手动编写所有这些支持.

我也知道Zend,CakePHP和Code Igniter支持i18n.