PHP基础陷阱题(变量赋值)


Posted in PHP onSeptember 12, 2012
<?php 
$a=3; 
$b=6; 
if($a=5||$b=7){ 
$a++; 
$b++; 
} 
var_dump($a, $b);

陷阱一

把$a=5、$b=7看成了$a==5、$b==7
错误结果:3,6

陷阱二

运算符的优先级,认为$a=5赋值成功$b=7没执行
错误结果:6,7

正确理解

陷阱是运算符的优先,赋值运算符(=)的优先级是最低的,所以正确理解应该是
$a=(5||$b=7)
正确结果:true,7

升级一下
变形一

$a=3; 
$b=6; 
$c=1; 
if($a=5||$b=7 && $c=10){ 
$a++; 
$b++; 
} 
var_dump($a, $b,$c);

变形二
$a=3; 
$b=6; 
$c=1; 
if($a=0||$b=7 && $c=10){ 
$a++; 
$b++; 
} 
var_dump($a, $b,$c);

有兴趣的同学可以思考一下:)
PHP 相关文章推荐
php&amp;java(二)
Oct 09 PHP
php中根据变量的类型 选择echo或dump
Jul 05 PHP
利用谷歌 Translate API制作自己的翻译脚本
Jun 04 PHP
PHP获取当前完整URL地址的函数
Dec 21 PHP
PHP批量查询WordPress留言者E-mail地址实现方法
Feb 15 PHP
Mac环境下php操作mysql数据库的方法分享
May 11 PHP
php实现图片缩略图的方法
Mar 29 PHP
Linux系统中为php添加pcntl扩展
Aug 28 PHP
highchart数据源纵轴json内的值必须是int(详解)
Feb 20 PHP
django中的ajax组件教程详解
Oct 18 PHP
PHP中PCRE正则解析代码详解
Apr 26 PHP
Laravel 框架控制器 Controller原理与用法实例分析
Apr 14 PHP
php中判断文件存在是用file_exists还是is_file的整理
Sep 12 #PHP
PHP中file_exists与is_file,is_dir的区别介绍
Sep 12 #PHP
PHP中几种常见的超时处理全面总结
Sep 11 #PHP
PHP UTF8中文字符截断函数代码
Sep 11 #PHP
php中将汉字转换成拼音的函数代码
Sep 08 #PHP
PHP json格式和js json格式 js跨域调用实现代码
Sep 08 #PHP
header跳转和include包含问题详解
Sep 08 #PHP
You might like
YII模块实现绑定二级域名的方法
2014/07/09 PHP
PHP编写学校网站上新生注册登陆程序的实例分享
2016/03/21 PHP
Laravel程序架构设计思路之使用动作类
2018/06/07 PHP
Laravel中10个有用的用法小结
2019/05/06 PHP
关于JavaScript的一些看法
2009/05/27 Javascript
jquery实现类似淘宝星星评分功能实例
2014/09/12 Javascript
Javascript基础教程之argument 详解
2015/01/18 Javascript
javascript 动态创建表格的2种方法总结
2015/03/04 Javascript
小白谈谈对JS原型链的理解
2016/05/03 Javascript
基于Bootstrap的后台管理面板 Bootstrap Metro Dashboard
2016/06/17 Javascript
浅谈Cookie的生命周期问题
2016/08/02 Javascript
JS 全屏和退出全屏详解及实例代码
2016/11/07 Javascript
jquery实现文字单行横移或翻转(上下、左右跳转)
2017/01/08 Javascript
[js高手之路]图解javascript的原型(prototype)对象,原型链实例
2017/08/28 Javascript
nodejs socket服务端和客户端简单通信功能
2017/09/14 NodeJs
JS非行间样式获取函数的实例代码
2018/06/05 Javascript
layui 表格的属性的显示转换方法
2018/08/14 Javascript
微信小程序自定义组件封装及父子间组件传值的方法
2018/08/28 Javascript
Vue指令v-for遍历输出JavaScript数组及json对象的常见方式小结
2019/02/11 Javascript
vue基础之使用get、post、jsonp实现交互功能示例
2019/03/12 Javascript
vue里的data要用return返回的原因浅析
2019/05/28 Javascript
判断“命令按钮”是否被鼠标单击详解
2019/07/31 Javascript
vue.js实现回到顶部动画效果
2019/07/31 Javascript
js实现翻牌小游戏
2020/07/31 Javascript
利用python将json数据转换为csv格式的方法
2018/03/22 Python
Django日志及中间件模块应用案例
2020/09/10 Python
python爬取youtube视频的示例代码
2021/03/03 Python
使用CSS禁止textarea调整大小功能的方法
2015/03/13 HTML / CSS
突袭HTML5之Javascript API扩展4—拖拽(Drag/Drop)概述
2013/01/31 HTML / CSS
Quiksilver荷兰官方网站:冲浪和滑雪板
2019/11/16 全球购物
JAVA程序设计笔试题面试题一套
2015/07/28 面试题
关心下一代工作先进事迹
2014/08/15 职场文书
2015年女工委工作总结
2015/07/27 职场文书
导游词之阆中古城
2019/12/23 职场文书
goland 设置project gopath的操作
2021/05/06 Golang
javascript遍历对象的五种方式实例代码
2021/10/24 Javascript