一、步骤不同
1、$a++:会先调用$a,之后执行自增运算。
2、++$a:先进行自增运算,之后调用$a。
二、主体不同
1、$a++:相当于 a = i; i++。
2、++$a:相当于 i++; a = i。
三、内存运行不同
1、$a++:内存中先将$a调入堆栈,之后指针自增1,之后将$a调出。
2、++$a:内存中指针先自增1之后将$a调入到指定内存位置。
参考资料来源:百度百科-自增自减运算符
一张图帮你搞定问题。
在理解的时候要注意,$i++所输出的值,和这条诗句执行过后的$i本身的值是不同的。
$a++ 是先使用$a的值,再将$a+1,比如$a=1, $b=$a++;;; 则$b=1,$a=2
++$a 是$a+1之后的整个值。。比如$a=1, $b=++$a;;; 则$b=2,$a=2
$i++是先赋值再加,++$i是先加再赋值...就是这