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 相关文章推荐
PHP5在Apache下的两种模式的安装
Sep 05 PHP
php生成局部唯一识别码LUID的代码
Oct 06 PHP
解析link_mysql的php版
Jun 30 PHP
Laravel 5框架学习之模型、控制器、视图基础流程
Apr 08 PHP
PHP超牛逼无限极分类生成树方法
May 11 PHP
PHP递归遍历多维数组实现无限分类的方法
May 06 PHP
浅谈php中curl、fsockopen的应用
Dec 10 PHP
Yii2中hasOne、hasMany及多对多关联查询的用法详解
Feb 15 PHP
php常用日期时间函数实例小结
Jul 04 PHP
php实现登录页面的简单实例
Sep 29 PHP
laravel框架中视图的基本使用方法分析
Nov 23 PHP
PHP如何通过date() 函数格式化显示时间
Nov 13 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
PHP操作文件方法问答
2007/03/16 PHP
zend api扩展的php对象的autoload工具
2011/04/18 PHP
那些年我们错过的魔术方法(Magic Methods)
2014/01/14 PHP
php实现字符串反转输出的方法
2015/03/14 PHP
zen_cart实现支付前生成订单的方法
2016/05/06 PHP
php模仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(中)
2017/06/11 PHP
Javascript实例教程(19) 使用HoTMetal(5)
2006/12/23 Javascript
深入浅析NodeJs并发异步的回调处理
2015/12/21 NodeJs
JS实现兼容各种浏览器的获取选择文本的方法【测试可用】
2016/06/21 Javascript
在使用JSON格式处理数据时应该注意的问题小结
2017/05/20 Javascript
JS回调函数基本定义与用法实例分析
2017/05/24 Javascript
jQuery选择器特殊字符与属性空格问题
2017/08/14 jQuery
Node.js利用console输出日志文件的方法示例
2018/04/27 Javascript
javascript深拷贝、浅拷贝和循环引用深入理解
2018/05/27 Javascript
详解在Angular4中使用ng2-baidu-map的方法
2019/06/19 Javascript
python 正则式 概述及常用字符
2009/05/07 Python
Python中Django框架利用url来控制登录的方法
2015/07/25 Python
python+selenium实现登录账户后自动点击的示例
2017/12/22 Python
浅谈Python2获取中文文件名的编码问题
2018/01/09 Python
python3+PyQt5实现文档打印功能
2018/04/24 Python
PyQt5+requests实现车票查询工具
2019/01/21 Python
Python3 实现串口两进程同时读写
2019/06/12 Python
python3.7 使用pymssql往sqlserver插入数据的方法
2019/07/08 Python
win10下安装Anaconda的教程(python环境+jupyter_notebook)
2019/10/23 Python
基于TensorFlow常量、序列以及随机值生成实例
2020/01/04 Python
谈一谈数组拼接tf.concat()和np.concatenate()的区别
2020/02/07 Python
Python安装依赖(包)模块方法详解
2020/02/14 Python
python实现控制台输出颜色
2021/03/02 Python
中国网上药店领导者:1药网
2017/02/16 全球购物
C#面试问题
2016/07/29 面试题
高中国旗下的演讲稿
2014/08/28 职场文书
作文评语集锦
2014/12/25 职场文书
会计求职自荐信范文
2015/03/04 职场文书
行政后勤人员工作计划应该怎么写?
2019/08/16 职场文书
排查MySQL生产环境索引没有效果
2022/04/11 MySQL
vue报错function () { [native code] },无法出现我们想要的内容 Unknown custom element
2022/04/11 Vue.js