有没有办法通过PHP获取屏幕大小?我看过google,并通过javascript找到了一种方法:
PHP:
<?php
$width = "<script>sw=screen.width;</script>";
$height = "<script>sh=screen.height;</script>";
echo "Width: ".$width." Height: ".$height;
?>
但是这并没有以$ width或$ height存储任何东西。这是一个很好的方式去做吗?还是有另一种方式?
答案 0 :(得分:1)
答案 1 :(得分:1)
你不能这样做,这是一种方法:
<?php
session_start();
if(isset($_POST['width'])){
$_SESSION['screen_size'] = array();
$_SESSION['screen_size']['width'] = intval($_POST['width']);
$_SESSION['screen_size']['height'] = intval($_POST['height']);
}
if(!isset($_SESSION['screen_size'])){
?>
<html>
<head>
<script>
function getSize(){
document.getElementById('inp_width').value=screen.width;
document.getElementById('inp_height').value=screen.height;
document.getElementById('form_size').submit();
}
</script>
</head>
<body onload='getSize()'>
<form method='post' id='form_size'>
<input type='hidden' name='width' id='inp_width'/>
<input type='hidden' name='height' id='inp_height'/>
</form>
</body>
</html>
<?php
}else{
var_dump($_SESSION['screen_size']);
}
这是一种简单的方法,页面将在第一次重新加载。
您可能想要使用AJAX。
此外,如果有人拒绝会话cookie,这将永远循环,如果浏览器接受cookie,则更好地测试。