我们有什么方法可以找到加载网页的计算机中设置的日期格式吗?
我想根据客户机系统中的设置在我的网页中显示日期。
我似乎是一个基于ASP的网页,其中列出了客户端系统的所有系统设置,包括已安装驱动程序的信息!
因此,如果在ASP中可行,那么我认为这也应该可以在PHP中使用!
答案 0 :(得分:1)
不幸的是,服务器PHP脚本没有此类信息。您可以检查HTTP标头。通常有标题
Accept-Language
Accept-Charset
这些可用于识别用户语言并猜测他的偏好(猜测不会检索他的真实偏好)。
更复杂的方法是使用Javascript函数dateObject.toLocaleDateString()
并尝试解析它并在浏览器中识别用户首选项并将该信息发送到服务器。我不知道任何可以做到这一点的图书馆,但你可能会试着找到它。
答案 1 :(得分:0)
在客户端计算机上运行的网页中,您可以访问浏览器提供的内容 - 没有其他内容(出于安全原因,设计)。您不能,例如读取或写入文件。
如果您正在谈论显示日期的语言和文化方面,那么您需要查看Locale:Javascript例如有一个方法Date.toLocaleDateString()。
如果您正在谈论其他事情(例如操作系统采用的特定文本布局),那么您无法找到答案。
答案 2 :(得分:0)
您需要在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。