Zend:LDML如何工作?

时间:2013-01-22 10:47:42

标签: zend-framework socialengine

目前我尝试在我们的SocialEngine安装(基于Zend构建)上修复一个问题,该安装在语言选择器中显示一种不是其本机名称的语言(如“Deutsch”代表“德语”),但用语言表示用户已设置前端(因此,当您将语言设置为英语时,您将看到“Deutsch”而不是“Deutsch”。)

在查看源代码时,我看到Zend_Locale_Data加载了一系列可供系统使用的语言,并尝试从似乎不在我的机器上的路径中读取LDML文件:

$temp = self::_getFile($locale, '/ldml/localeDisplayNames/languages/language', 'type');

当路径不在我的计算机上时,它必须在网上但是搜索“ldml”或“zend ldml”我没有得到任何关于这个主题的提示。你能指导我度过迷雾吗?

感谢任何帮助。谢谢!

1 个答案:

答案 0 :(得分:2)

您看到的'/ldml/localeDisplayNames/languages/language'不是文件路径而是XPath表达式,读取的文件是位于Zend/Locale/Data/的XML文件,文件名与给定的{{1}相关参数。

e.g。对于英语区域设置,加载的XML文件应为$locale。打开此文件将显示XPath表达式选择的结构

Zend/Locale/Data/en.xml