诡谲,这句PHP看起来都对,可是无法得到正确结果
程序员文章站
2022-06-17 20:24:35
...
诡异,这句PHP看起来都对,可是无法得到正确结果。
直接 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代码也算在里面了,用正则把数字匹配出来再比较就可以了。
------解决方案--------------------
首先要明白哪些是客户端的代码,哪些是服务端的代码,二服务端的代码是优先执行的,客户端的是后执行的
$screen_w = "";
if($screen_w 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代码也算在里面了,用正则把数字匹配出来再比较就可以了。
------解决方案--------------------
首先要明白哪些是客户端的代码,哪些是服务端的代码,二服务端的代码是优先执行的,客户端的是后执行的
相关文章
相关视频
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
下一篇: thinkPHP怎么实现多表查询
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论