PHP自增自减
程序员文章站
2024-02-16 11:11:52
...
写出一下php段的输出结果:
答案为:501
主要涉及到两个知识点:
1.php变量的作用域;
2.自增/自减变量;
面试人对 “php变量的作用域” 理解挺到位,但在 “自增/自减变量” 上有些把握不准。现复习如下,以供参考:
自增/减分为前置和后置,这涉及到一个先后顺序:
Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->
问题:若$i=2,求表达式($i++)*($i++)*($i++)的值,并求$i的值
答案:($i++)*($i++)*($i++)结果为24,$i为5
分析:先看计算顺序,发现有括号则先算括号里面的,先取$i的值2为($i++)的值,然后$i自加为3; [此时($i++)左=2,$i=3]
再算括号中,先取此时的$i的值3为($i++)的值,然后$i再自加为4;[此时($i++)中=3,$i=4]
后算括号右,先取此时的$i的值4作为($i++)的值,然后$i再自加为5
最后做乘法运算,即2*3*4=24 $i=5