php中++i 与 i++ 的区别比较
++i 与 i++ 在很多编程中都有,对变量的增加+1操作,但是有先后问题,下面我来介绍一下他们在运行是的一些区别. 1、++i 的用法(以 a=++i,i=2 为例) 先将 i 值加 1 (也就是 i=i+1 ),然后赋给变量 a (也就是 a=i ), 则最终 a 值等于 3,i 值等于 3 . 所以 a=++i 相当于 i=i+1,a=i 2、i++ 的用法(以 a=i++,i=2 为例) 先将 i 值赋给变量 a (也就是 a=i ),然后 i 值加 1 (也就是 i=i+1 ), 则最终 a 值等于 2,i 值等于 3 . 所以 a=i++ 相当于 a=i,i=i+1 3、++i 与 i++ a=++i 相当于 i++,a=i a=i++ 相当于 a=i,i++ 4、++i 与 i++ 单独使用时,相当于 i=i+1 如果赋给一个新变量,则 ++i 先将 i 值加 1,而 i++ 先将 i 赋给新变量. 性能优化 实例代码如下:
时间:13s 对比第一种方法和第二种方法,因为在PHP中,最终被执行的是OPCODE,每行opline都有俩个操作数,对于操作数来说,一般有3种类型的存取方式,临时变量,变量,和编译时变量,这三种变量,其中,存取最快的是第三种,编译器变量,在OpCode执行过程中,会讲一个变量的加一级引用存储在一个hash 结构中,用来加快存取速度. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |