.po
我可以使用我的文件翻译单个月份或日期:
echo __('December'); //becomes diciembre
echo __('Thursday'); //becomes jueves
//...etc
但是,当我使用这样的日期格式时:
echo __(date("j F, Y")); //becomes 20 December 2012
它不翻译 - 我假设是因为我每个月和每一天的翻译都在单独的行中。
通常我会做这样的事情:
__(date('j')) . ' ' . __(date('F')) . ' ' . __(date('Y'));
但是,在 CMS 中,管理员可以将日期更改为他们想要的任何格式。所以,它可以是“j F,Y”或“Ymd”,或者......其他任何东西。
我想也许我可以做一个助手或其他东西,将日期分解成碎片,并返回 a 中的每个部分__()
,但是 - 这似乎有点矫枉过正。是否有捷径可寻?
我在 AppController 中设置我的语言环境:
setlocale(LC_ALL, $currentLanguage['locale']);
Configure::write('Config.language', $currentLanguage['code2']);