很多php教程中会教大家如何用js获取客户端分辨率,在php中,客户端分辨率的数据无法直接访问,但在javascript中,屏幕宽度和高度可以直接访问。
这两种语言都可以设置和获取cookies,可以使用javascript在cookie中保存分辨率的数据,然后在php中获取这些数据。
在之前的文章中,我们介绍过
js获取浏览器屏幕分辨率 js获取电脑分辨率,对js
脚本如何获取屏幕分辨率的朋友,可以参考下。
使用JavaScript获取客户端分辨率数据。
为了在所有浏览器中都能得到这个数据,要定义一个跨浏览器的代码来获得屏幕width和height。
复制代码 代码示例:
if(typeof(window.innerWidth) !== 'number') {
if(document.documentElement.clientWidth !== 0) {
width = document.documentElement.clientWidth;
height = document.documentElement.clinetHeight;
}
else {
width = document.body.clientWidth;
height = document.body.clinetHeight;
}
}
else {
width = window.innerWidth;
height = window.innerHeight;
}
其中,宽度和高度变量是客户端分辨率的数据。
设置两个cookie, width和height :
复制代码 代码示例:
document.cookie = 'width' + '=' + width;
document.cookie = 'height' + '=' + height;
现在,这个数据存储在cookie中,可以用PHP访问这些cookie。
例如:
复制代码 代码示例:
echo $_COOKIE['width'];
注意
对于第一次加载,客户端分辨率的数据不能用php访问,因为javascript还没有在cookies里保存这些数据。