$a=21;
$b=$a++;    
$c=++$a;     
echo $a;    
echo $b;    
echo $c;    
登录后复制
登录后复制

我理解的结果过是23 ,22,23,

但是输入的结果为什么是23,21,23 求解

回复内容:

$a=21;
$b=$a++;    
$c=++$a;     
echo $a;    
echo $b;    
echo $c;    
登录后复制
登录后复制

我理解的结果过是23 ,22,23,

但是输入的结果为什么是23,21,23 求解

这不是PHP的问题,程序语言都这样。$a++是先做运算再自增的,++$a是先自增再做运算

++前置就先自增 后置就后自增
具体拆开等价于下面这个:

$a = 21;

//$b = $a++;
$b = $a;    
$a++;

//$c = ++$a;
++$a;
$c = $a;  
登录后复制
09-15 11:25