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

 更新时间:2012年09月12日 20:58:36   作者:  
PHP基础陷阱题代码,需要的朋友可以参考下

复制代码 代码如下:

<?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查询大量数据内存耗尽问题的解决方法

    这篇文章主要为大家详细介绍了PHP查询大量数据内存耗尽问题的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10
  • PHP strripos函数用法总结

    PHP strripos函数用法总结

    在本篇文章里小编给大家分享了关于PHP strripos函数用法知识点,有兴趣的朋友们学习下。
    2019-02-02
  • PHP下通过系统信号量加锁方式获取递增序列ID

    PHP下通过系统信号量加锁方式获取递增序列ID

    前一阵子,设计LAJP时需要在PHP中生成唯一ID,看似小菜一碟却着实让我为难了,在Java中一个同步方法即可搞定的事,但在PHP中却没有好的解决思路。
    2009-09-09
  • php抓取并保存网站图片的实现代码

    php抓取并保存网站图片的实现代码

    这篇文章主要介绍了php抓取并保存网站图片的实现代码,网页源代码捕获,图片链接获取、分析、并将同样的图片链接合并功能。功能很全面,需要的朋友可以参考下
    2015-10-10
  • 五个PHP程序员工具

    五个PHP程序员工具

    PHP程序员都应该知道的工具在参与了几个大型PHP项目,写了很多PHP代码以后,我发现很多工具可以提高代码质量,简化发布,使得做为PHP开发人员的生涯变得轻松许多。许多这样的工具可能已经为大家所用。但是,由于一些人甚至没有注意到这些工具的存在,我会从此开始,好了,不说废话,下面是我认为所有PHP程序员应该知道的工具列表。
    2008-05-05
  • php使用memcoder将视频转成mp4格式的方法

    php使用memcoder将视频转成mp4格式的方法

    这篇文章主要介绍了php使用memcoder将视频转成mp4格式的方法,涉及php操作视频文件的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • PHP迭代与递归实现无限级分类

    PHP迭代与递归实现无限级分类

    这篇文章主要为大家详细介绍了PHP迭代与递归实现无限级分类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • 用PHP读取flv文件的播放时间长度

    用PHP读取flv文件的播放时间长度

    用PHP读取flv文件的播放时间长度的代码,需要用的朋友可以参考下。
    2009-09-09
  • PHP 加密解密内部算法

    PHP 加密解密内部算法

    最近学习URL跳转的时候新进三个超好用的PHP加密解密函数,貌似是discuz里的…使用这些加密解密的原因是因为有时自己的URL地址被人获取以后想破解你里面传值的内容就必须知道你的key,没有key,他应该要破了一阵子才能知道你URL里面的内容吧。
    2010-04-04
  • PHP设计模式之模板方法模式Template Method Pattern详解

    PHP设计模式之模板方法模式Template Method Pattern详解

    在我们实际开发中,如果一个方法极其复杂时,如果我们将所有的逻辑写在一个方法中,那维护起来就很困难,要替换某些步骤时都要重新写,这样代码的扩展性就很差,当遇到这种情况就要考虑今天的主角——模板方法模式
    2022-12-12

最新评论