前端之家收集整理的这篇文章主要介绍了
如何在PHP中自动设置用户的语言环境?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有一种简单的
方法来解析
用户的HTTP_ACCEPT_LANGUAGE并在
PHP中设置语言环境?
我知道Zend框架有一个方法可以做到这一点,但我宁愿不安装整个框架只是为了使用那一点功能.
PEAR I18Nv2软件包处于测试阶段,近三年没有改变,所以如果可能的话我宁愿不使用它.
如果它可以判断服务器是否在Windows上运行,那也很好,因为Windows的语言环境字符串与世界其他地方不同……(德语是“deu”或“german”而不是“de”. )
不错的
解决方案是
on its way.
如果没有它,您将需要解析该标头.它是以逗号分隔的以分号分隔的区域设置和属性的列表.
它看起来像这样:
en_US,en;q=0.8,fr_CA;q=0.2,*;q=0.1
然后尝试每个语言环境,直到setlocale()接受它.做好准备,没有一个可以匹配.
不要基于它太重要或允许用户覆盖它,因为一些用户可能有错误配置的浏览器.
对于Windows语言环境,您可能需要将ISO 639-1名称转换为ISO 639-2 / 3吗?