Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在symfony2(2.4及以上版本)中正确使用日期的区域设置_Symfony_Twig - Fatal编程技术网

如何在symfony2(2.4及以上版本)中正确使用日期的区域设置

如何在symfony2(2.4及以上版本)中正确使用日期的区域设置,symfony,twig,Symfony,Twig,如何在symfony2细枝中正确使用日期区域设置,以便: for GB browser I display format 27/10/2013 for US browser I display format 10/27/2013 首先,我必须启用默认包含在symfony2框架中的Intl twig扩展(默认情况下未启用) 通过将其添加到config.yml(示例src/Project/TestBundle/Resources/config/)中来启用它: 然后你用这个: {{ 'now' |

如何在symfony2细枝中正确使用日期区域设置,以便:

for GB browser I display format 27/10/2013 
for US browser I display format 10/27/2013

首先,我必须启用默认包含在symfony2框架中的Intl twig扩展(默认情况下未启用)

通过将其添加到config.yml(示例src/Project/TestBundle/Resources/config/)中来启用它:

然后你用这个:

{{ 'now' | localizeddate('short', 'none') }} 
// outputs dd/mm/yyyy or mm/dd/yyyy depending on where browser is coming from
如果这不能自动工作,那么您需要通过浏览器强制使用首选语言(在您的控制器中)

这将使用有效的日期格式,具体取决于浏览器的访问者设置(如接受值为en_GB或en_US的语言标题)

您可以通过在localizeddate中添加第三个参数(例如“de”)来强制使用特定的语言环境。要获取当前区域设置,请使用{{app.request.locale}}


请注意,twig文档有点过时,因此最好使用我在上面所做的工作

首先,我必须启用默认包含在symfony2框架中的Intl twig扩展(默认情况下未启用

通过将其添加到config.yml(示例src/Project/TestBundle/Resources/config/)中来启用它:

然后你用这个:

{{ 'now' | localizeddate('short', 'none') }} 
// outputs dd/mm/yyyy or mm/dd/yyyy depending on where browser is coming from
如果这不能自动工作,那么您需要通过浏览器强制使用首选语言(在您的控制器中)

这将使用有效的日期格式,具体取决于浏览器的访问者设置(如接受值为en_GB或en_US的语言标题)

您可以通过在localizeddate中添加第三个参数(例如“de”)来强制使用特定的语言环境。要获取当前区域设置,请使用{{app.request.locale}}


请注意,twig文档有点过时,因此最好使用我上面所做的工作

效果良好,但“短”日期格式将显示日期,如dd/mm/yy或mm/dd/yy。你知道有没有一种方法可以根据区域设置以dd/mm/yyyy或mm/dd/yyyy(全年)格式显示日期?我猜应该是调查php IntlDateFormatter类这确实是我做的,但是我找不到任何方法可以在任何区域设置中使用yyy而不是yy。。。无论如何,再次感谢你的帮助!工作正常,但“短”日期格式将显示诸如dd/mm/yy或mm/dd/yy之类的日期。你知道有没有一种方法可以根据区域设置以dd/mm/yyyy或mm/dd/yyyy(全年)格式显示日期?我猜应该是调查php IntlDateFormatter类这确实是我做的,但是我找不到任何方法可以在任何区域设置中使用yyy而不是yy。。。无论如何,再次感谢你的帮助!
$this->getRequest()->setLocale($this->getRequest()->getPreferredLanguage());