Javascript 使用php获取浏览器宽度

Javascript 使用php获取浏览器宽度,javascript,php,Javascript,Php,有没有办法通过php获得屏幕大小?我浏览了一下谷歌,发现了一种通过javascript实现的方法,如下所示: PHP: <?php $width = "<script>sw=screen.width;</script>"; $height = "<script>sh=screen.height;</script>"; echo "Width&#58; ".$width." Height&#58; ".$

有没有办法通过php获得屏幕大小?我浏览了一下谷歌,发现了一种通过javascript实现的方法,如下所示:

PHP:

 <?php
   $width = "<script>sw=screen.width;</script>"; 
   $height = "<script>sh=screen.height;</script>"; 
   echo "Width&#58; ".$width." Height&#58; ".$height;
 ?>


但这并不存储$width或$height中的任何内容。这是做这件事的好方法吗?或者还有其他方法吗?

仅使用php无法获得浏览器宽度。PHP是服务器代码

试着看一看。可以使用ajax在php代码中发送(发布)浏览器宽度


希望有帮助。

仅使用php无法获得浏览器宽度。PHP是服务器代码

试着看一看。可以使用ajax在php代码中发送(发布)浏览器宽度


希望有帮助。

你不能这样做,这里有一个方法:

<?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']);
}

函数getSize(){
document.getElementById('inp_width')。值=screen.width;
document.getElementById('inp_height')。值=screen.height;
document.getElementById('form_size')。submit();
}

你不能这样做,这里有一个方法:

<?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']);
}

函数getSize(){
document.getElementById('inp_width')。值=screen.width;
document.getElementById('inp_height')。值=screen.height;
document.getElementById('form_size')。submit();
}

Ofc不是,因为PHP在JS之前得到评估。您正在存储一个字符串,该字符串将作为脚本进行计算,但变量的值不受影响,因为PHP甚至不知道有脚本。我真的不认为有理由用PHP存储浏览器窗口的宽度,但是你需要AJAX来实现这一点。PHP是服务器端的,JS是客户端的。你不能使用PHP的JS“inside”。最重要的问题可能是你为什么要这样做?实际上我正在做一个由其他人完成的正在运行的项目。在该项目中,我需要在php浏览器的宽度。但是从谷歌我知道这在php中是不可能的。这就是为什么我在@wesleymurchofc发布这个问题的原因,因为PHP在JS之前得到评估。您正在存储一个字符串,该字符串将作为脚本进行计算,但变量的值不受影响,因为PHP甚至不知道有脚本。我真的不认为有理由用PHP存储浏览器窗口的宽度,但是你需要AJAX来实现这一点。PHP是服务器端的,JS是客户端的。你不能使用PHP的JS“inside”。最重要的问题可能是你为什么要这样做?实际上我正在做一个由其他人完成的正在运行的项目。在该项目中,我需要在php浏览器的宽度。但是从谷歌我知道这在php中是不可能的。这就是为什么我发布这个问题@Wesley Murchi如果你喜欢这个答案,请验证它,它会奖励我的帮助:)我想要浏览器窗口中可用的大小,发现上面的代码告诉我,如果我只更改value=screen.width;to值=window.InnerWidth;和值=屏幕高度;to值=window.innerHeight;如果您喜欢这个答案,请验证它,它会奖励我的帮助:)我想要浏览器窗口中可用的大小,发现上面的代码告诉我,如果我只更改value=screen.width;to值=window.InnerWidth;和值=屏幕高度;to值=window.innerHeight;