如何确定客户端电脑的日期格式
有没有什么办法可以找到日期格式设置在网页加载的计算机?如何确定客户端电脑的日期格式
我想根据客户机系统中设置的内容在我的网页中显示日期。
我似乎是一个基于ASP的网页,其中列出了客户端系统的所有系统设置,包括安装的驱动程序的信息!
所以如果有可能在ASP中,那么我认为这也应该可以在PHP中使用!
在运行在客户端机器上的网页中,您可以访问浏览器提供的内容 - 没有其他(由于安全原因,通过设计)。你不能,例如读或写文件。
如果您正在讨论显示日期的语言和文化方面,那么您需要查看语言环境:例如,Javascript有一个方法Date.toLocaleDateString()。
如果您正在讨论其他内容(例如操作系统采用的特定文本布局),则无法找到。
您需要在Apache中使用一个调用geoip的模块,以便您可以识别用户的国家/地区。然后,您可以设置时区,以在其时区显示给用户。
例子:
<?php
date_default_timezone_set('Europe/London');
if (date_default_timezone_get()) {
echo 'date_default_timezone_set: ' . date_default_timezone_get() . '<br />';
}
if (ini_get('date.timezone')) {
echo 'date.timezone: ' . ini_get('date.timezone');
}
?>
你可以阅读一下here。
不幸的是,服务器PHP脚本没有这样的信息。您可以检查HTTP标头。经常有标头
Accept-Language
Accept-Charset
那些可以用来识别用户语言和猜测他的偏好(猜测不检索他的真正偏好)。
更复杂的方法是使用Javascript函数dateObject.toLocaleDateString()
并尝试解析并在浏览器中识别用户首选项并将该信息发送到服务器。我不知道任何可以做到这一点的图书馆,但您可能会尝试找到。
只是为了记录,如果一切都失败了,您还可以尝试根据IP的地理位置来猜测计算机的区域设置。 – 2009-06-10 13:39:59
我认为这会做到这一点。我会试试这个作为解决方法。 – 2009-06-11 05:20:14