从时区标识符中检索语言环境-PHP

3
有没有一种简单的方法可以从 timezone_identifier 中获取区域设置?
例如:
date_default_timezone_set('Europe/Berlin');

在这种情况下,Locale应该是de_DE

也许最好使用浏览器设置?https://dev59.com/UnVC5IYBdhLWcg3wbghT - Serg
2个回答

2
deceze所说,这是不可能的。但您可以从时区获取位置信息。根据php.net上的说明。
$tz = new DateTimeZone("Europe/Prague"); 
print_r($tz->getLocation());
print_r(timezone_location_get($tz));

将输出

Array
(
 [country_code] => CZ
 [latitude] => 50.08333
 [longitude] => 14.43333
 [comments] => 
)
Array
(
 [country_code] => CZ
 [latitude] => 50.08333
 [longitude] => 14.43333
 [comments] => 
)

这是一个很好的提示 - 因为我有语言代码,所以我可以根据语言代码和位置信息构建区域设置,谢谢。 - casa
@casa 我也希望能够从位置上实现这个。 :-) - Awais Qarni
@casa 这个位置有什么更有帮助的作用吗?比利时...三种语言...? - deceze

1
不,因为没有这样的1:1对应关系。以比利时为例,他们在同一时区内正式使用三种语言。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接