当前位置:Gxlcms > PHP教程 > 诡异,这句PHP看起来都对,可是无法得到正确结果。

诡异,这句PHP看起来都对,可是无法得到正确结果。

时间:2021-07-01 10:21:17 帮助过:14人阅读

$screen_w = "";if($screen_w < 500){echo '宽度小于500';}else{echo '大于等于500';}


直接 echo $screen_w; 可以得到正确结果是 1366

if判断的时候 结果却是 1366小于500

如果 (int)$screen_w 或者 intval($screen_w)

直接显示为0了

何解?


回复讨论(解决方案)

没有语法错误,就表示是对的吗?

1、php 先于 js 执行!即便是 $screen_w = ""; 能得到数据,那也是 php 代码执行完了以后
2、$screen_w = "";
是什么呢?只不过是个字符串赋值
即便有 echo $screen_w;
那也只是在浏览器中显示而已

var_dump打印出来,是46位的字符串,JS代码也算在里面了,用正则把数字匹配出来再比较就可以了。

好像不能匹配,我也不知道怎么把数字弄出来。

我以前也出现这种问题,基础不牢固啊

js 和 php 要分开,

首先要明白哪些是客户端的代码,哪些是服务端的代码,二服务端的代码是优先执行的,客户端的是后执行的

可是 php无法获取屏幕宽度啊 我想写一句判断 屏幕宽度小于主内容宽度时就不输出一个会挡住内容的浮动条

这些问题几乎是新手必经之路,十数年如是(偶当年也不例外,呵呵),为啥各种教材都不把这个写一写?

人气教程排行