我有一个响应式网站,我需要一些PHP条件,具体取决于窗口宽度(或媒体查询)。
示例:
if ($window_width > 1400px) {
echo 'Your window is wider than 1400px';
}
elseif ($window_width > 1000px) AND ($window_width < 1399px) {
echo 'Your window is between 1000px and 1399px';
}
else {
echo 'Your window is narrower than 1000px.';
}
感谢您的帮助!
答案 0 :(得分:5)
检查这个
尝试使用http://www.php.net/get_browser并检查isMobileDevice字段。当然,如果在php.ini中设置browscap.ini的路径,它可能只有帮助。如果没有,您可以使用像https://github.com/garetjax/phpbrowscap
这样的php类答案 1 :(得分:0)
我假设这是用于设备检测。我不确定你是否可以单独使用PHP检测窗口宽度。如果可以,则此信息将显示在HTTP标头中。我建议使用为此构建的开源PHP类:http://mobiledetect.net/
答案 2 :(得分:0)
不,你不能用PHP做到这一点。 php严格来说是服务器端
用户javascript代替。 下面是我使用javascript获取设备分辨率的代码
<script>
screenWidth = window.screen.width,
screenHeight = window.screen.height;
console.log(screenWidth);
console.log(screenHeight);
</script>
答案 3 :(得分:0)
这是诀窍: 使用js评估窗口宽度,然后将PHP加载到框架中并将宽度放在参数中。然后,您的PHP脚本可以读取该参数并根据该值执行不同的条件。
这是js部分:
<script type="text/javascript">
var width = window.innerWidth;
document.write('<iframe src="content.php?w='+width+'"></iframe>');
</script>
在content.php文件中,只需读取width参数并对其执行操作:
<?php
//Get width of browser window
$width = $_GET['w'];
echo ('width: '.$width);
?>
答案 4 :(得分:0)
在视图中,您可以显示/隐藏div,如下所示:
<style>
#web {display: block;}
#mobile {display: none;}
@media screen and (max-width: 320px) {
#web {display: none;}
#mobile {display: block;}
}
</style>
<div id="mobile">
<?php echo "is mobile"; //include("page_mobile.phtml"); ?>
</div>
<div id="web">
<?php echo "is web"; //include("page_web.phtml"); ?>
</div>