php基础语法之自加自减

自加、自减运算

自加自减,就是把自己加1,或者减1。
如果你学习过其他编程语言。你会发现,此处的用法又是计算机里面的一个规定。可以这样用,用起来更加简洁。

符号说明
$x++先赋值后加
$x--先赋值后减
++$x先加后赋值
--$x先减后赋值

上面的用法其实挺简单的,按照上面的例子。我们分成步骤去,按过程去判断即可。

<?php


$x = 5;
//先赋值后加:即先将$x的值赋值给$y。$x的值为5,所以将$x的值赋值给$y。$y也为5
$y = $x++;
//$x的结果输出为6,因为赋值给$y后,$x自己又把自己进行了+1操作。所以,$x的结果为6
echo $x;
?>

我们来对比一下先加后赋值,如下:

<?php

$x = 5;
//先将$x自加1,$x等于5,自加1后结果为6。因此,$y的结果为6
//自加后,再将结果6偷偷的赋值给自己$x
$y = ++$x;
//$x的结果输出也为6。因为$x执行+1完成后,将5+1的结果赋值给了自己
echo $x;
?>

你再做实验,试试$x-- 和 --$x的结果是这样吗?

请回答,下面$water + $paper的结果为多少?

<?php

$x = 5;
$y = 6;

$foo = $x++ + $x--;
$bar = ++$y + ++$x;
$cup = $x-- + $y--;
$paper = ++$x + $x++;
$water = $y-- + $x--;

echo $water + $paper;
?>


继续学习
||
<?php $x = 5; $y = 6; $foo = $x++ + $x--; $bar = ++$y + ++$x; $cup = $x-- + $y--; $paper = ++$x + $x++; $water = $y-- + $x--; echo $water + $paper; ?>
提交重置代码
章节
笔记
提问
课件
反馈
捐赠

php入门教程之一周学会PHP

高并发千万级数据库系统解决方案
  • 推荐课程
  • 评论
  • 问答
  • 笔记
  • 课件下载
樂成

樂成

PHP中 $x++ 和 ++$x 的区别 http://www.php.cn/blog/detail/13861.html

2年前    添加回复 1

回复
**三

**三

$foo = 5 + 6 //11 因为后面又调用了一次$x; 此时:$x 为:5; $bar = 7 + 6 //13 因为上面$x为5 这次前++ 就为6 ,$y 初始值为6 前++ 就为7; 此时$y值 为7 , $x 值为6; $cup = 6 + 7 //13 因为上面$x 值为6 $y值为7 此时$x值为5,$y值为6 $paper = 6 + 6 //12 因为上面$

4年前    添加回复 1

回复
折印

折印

//$foo=11; //$foo= $x++ + $x--;(先赋值左边的$x为5,再自加$x++结果6,此时左边$x值为6,然后右边的$x先赋值[这个值取的是左边自加后的6],再自减$x--结果是5,最后左边6右边5相加为11)

4年前    添加回复 1

回复
phpcn_u70234

phpcn_u70234

// $foo=11; x=5 y=6 // $bar=13; x=6 y=7 // $cup=13; x=5 y=6 // $paper=12; x=7 y=6 // $water=13; x和y代表着经过运算后x和y的值

4年前    添加回复 1

回复
RocherY

RocherY

$foo:5+(过了加号$x++自加变成6)6=11 此时$x--自减变成5 $x=5 $y=6 $bar:6+1 + 5+1 =13 此时$x=6 $y=7 $cup:6+7=13 $x过了加号之后自减变成5,运算结束后$y自减变成6 $x=5 $y=6 $paper:5+1+(此时$x=6)6=12 运算结束后$x自加变成7 $x=7 $y=6 water: 6+7=13 $

4年前    添加回复 1

回复
visual

visual

//$foo=6+5;此时x=5 //$bar=7+6 此时先运算后赋值,x=6,y=7 //相当于两次运算先算$cup=6+7最后再算x=5,y=6 //$paper=6+6 x=7 //$water=6+7 x=6,y=5

2年前    添加回复 0

回复
ԾvԾ人人余耳总

ԾvԾ人人余耳总

建议大家跳过这个小节,因为这种写法没有实际意义,也应该尽量避免这种带有歧义的写法 而且在不同的语言中有不同的运算结果

3年前    添加回复 0

回复
最美的眼睛

最美的眼睛

建议复制到上面去看 0.0 没有排列好

3年前    添加回复 0

回复
最美的眼睛

最美的眼睛

我给大家总结一下 <?php $x = 5; $y = 6; 5 + 6 =11 $foo = $x++ + $x--; 现在的x是5 7 + 6 =13 $bar = ++$y + ++$x;现在的y是7 x是6 6 + 7 =13 $cup = $x-- + $y--;现在的x是5 y是6 6 + 6 =12 $paper = ++$x + $x++;现在的x是7 6 +

3年前    添加回复 0

回复
如长青

如长青

很绕,但是评论区有答案,看几遍就明白了

4年前    添加回复 0

回复
水之蓝色

水之蓝色

这个得慢慢理,不要着急,呵呵

4年前    添加回复 0

回复
¤

¤

前面有点晕,有点错误 $foo = $x++ + $x--;//11 7+4 这个不参与下面的运算 $bar = ++$y + ++$x;//13 7+6 $cup = $x-- + $y--;//13 6+7 $paper = ++$x + $x++;//12 6+6 $water = $y-- + $x--;//13 7+6 echo $water + $paper;//25

4年前    添加回复 0

回复
¤

¤

$x = 5; $y = 6; $foo = $x++ + $x--;//5+6=11先赋值 还没有自增 $bar = ++$y + ++$x;//8+7=14 调用上边得要增一,然后在先加一 一共 是二 $cup = $x-- + $y--;//7+8=14这个 是先赋值 还没开始自减 下面调用的时候再减,所以不变 $paper = ++$x + $x++;//7+6=13 第

4年前    添加回复 0

回复
¤

¤

$x = 5; $y = 6; $foo = $x++ + $x--;//5+6=11 $bar = ++$y + ++$x;//8+7=14 $cup = $x-- + $y--;//7+8=14 $paper = ++$x + $x++;//6+6=12 $water = $y-- + $x--;//6+7=13 echo $water + $paper;

4年前    添加回复 0

回复
phpcn_u146783

phpcn_u146783

$foo = $x++ + $x--; //$x++ = 5;$x -- = 6;x=5; 11 $bar = ++$y + ++$x; //++$y = 7; $y=7; ++x=6; x=6; 13 $cup = $x-- + $y--; //$x--=6; x=5; $y--=7; y=6; 13 $paper = ++$x + $x++;//++$x=6; x=6; $x++=6;

4年前    添加回复 0

回复

为什么结果为25呢

[最新 学不会网安 的回答]谢谢啦 懂了

时间:2个月前

我这边注释有毛病吗?怎么最终结果输出13呢?

[最新 V 的回答]的确是13,你可能那个地方看错了,好***看

时间:2年前

php的运算方法

[最新 樂成 的回答]之前我说过有个类似的题,其实思路是一样的,希望对你有帮助https://www.php.cn/blog/detail/13861.html

时间:2年前

这行代码看不懂?

[最新 樂成 的回答]这是我做的学习笔记,可以相互学习下PHP中 $x++ 和 ++$x 的区别http://www.php.cn/blog/detail/13861.html

时间:2年前

$cup 电脑运算等于13 怎么算的?

[最新 MOMO 的回答]//你将$y = ++$x;这段代码得加号改到前面跟改到后面之后。注意观察变化。多琢磨几遍就明白了

时间:4年前

php基础语法之自加自减

[最新 ringa_lee 的回答]自加:$a++   等同于  $a+1自减:$a--     等同于  $a-1

时间:4年前

怎么理解 谢谢

[最新 数据分析师 的回答]怎么理解 谢谢-PHP中文网问答-怎么理解 谢谢-PHP中文网问答围观一下哦,学习一下。

时间:5年前

怎么理解 谢谢!

[最新 数据分析师 的回答]怎么理解 谢谢!-PHP中文网问答-怎么理解 谢谢!-PHP中文网问答围观一下哦,学习一下。

时间:5年前

梨夜?

梨夜?

$x++ 先赋值后加 $x-- 先赋值后减 ++$x 先加后赋值 --$x 先减后赋值

7个月前 0

邢百贺

邢百贺

7.21

11个月前 0

浮世绘梦

浮世绘梦

php基础语法之自加自减

1年前 0

回忆

回忆

符号 说明 $x++ 先赋值后加 $x-- 先赋值后减 ++$x 先加后赋值 --$x 先减后赋值

1年前 0

秋城

秋城

自加自减,就是把自己加1,或者减1。 符号 说明 $x++ 先赋值后加 $x-- 先赋值后减 ++$x 先加后赋值 --$x 先减后赋值

2年前 0

心灵毒鸡汤

心灵毒鸡汤

符号 说明 $x++ 先赋值后加 $x-- 先赋值后减 ++$x 先加后赋值 --$x 先减后赋值

2年前 0

木子凡

木子凡

自加自减,就是把自己加1,或者减1。 如果你学习过其他编程语言。你会发现,此处的用法又是计算机里面的一个规定。可以这样用,用起来更加简洁。 $x++ 先赋值后加 $x-- 先赋值后减 ++$x 先加后赋值 --$x 先减后赋值

3年前 0

j~y

j~y

符号 说明 $x++ 先赋值后加 $x-- 先赋值后减 ++$x 先加后赋值 --$x 先减后赋值

3年前 0

影清如梦

影清如梦

php基础语法之自加自减 自加、自减运算 自加自减,就是把自己加1,或者减1。 如果你学习过其他编程语言。你会发现,此处的用法又是计算机里面的一个规定。可以这样用,用起来更加简洁。 符号 说明 $x++ 先赋值后加 $x-- 先赋值后减 ++$x 先加后赋值 --$x 先减后赋值 上面的用法其实挺简单的,按照上面的例子。我们分成步骤去,按过程去判断即可。 <?php $x = 5; //先赋值后加:即先将$x的值赋值给$y。$x的值为5,所以将$x的值赋值给$y。$y也为5 $y = $x++; //$x的结果输出为6,因为赋值给$y后,$x自己又把自己进行了+1操作。所以,$x的结果为6 echo $x; ?> 我们来对比一下先加后赋值,如下: <?php $x = 5; //先将$x自加1,$x等于5,自加1后结果为6。因此,$y的结果为6 //自加后,再将结果6偷偷的赋值给自己$x $y = ++$x; //$x的结果输出也为6。因为$x执行+1完成后,将5+1的结果赋值给了自己 echo $x; ?> 你再做实验,试试$x-- 和 --$x的结果是这样吗? 请回答,下面$water + $paper的结果为多少? <?php $x = 5; $y = 6; $foo = $x++ + $x--; $bar = ++$y + ++$x; $cup = $x-- + $y--; $paper = ++$x + $x++; $water = $y-- + $x--; echo $water + $paper; ?>

4年前 0

3期-Shawn

3期-Shawn

<?php $x = 5; $y = 6; $foo = $x++ + $x--; echo $x."<br>"; echo $y."<br>"; echo $foo."<br>"."<br>"; $bar = ++$y + ++$x; echo $x."<br>"; echo $y."<br>"; echo $bar."<br>"."<br>"; $cup = $x-- + $y--; echo $x."<br>"; echo $y."<br>"; echo $cup."<br>"."<br>"; $paper = ++$x + $x++; echo $x."<br>"; echo $y."<br>"; echo $paper."<br>"."<br>"; $water = $y-- + $x--; echo $x."<br>"; echo $y."<br>"; echo $water."<br>"."<br>"; echo $water + $paper; ?>

4年前 0

Martin

Martin

111

4年前 0

5815787

5815787

起初 $x = 5 $y = 6 1.$foo = $x++ + $x-- 这里我们先赋值(因为$x++和$x--嘛),所以$foo = 5 + 5 =10 然后,$x+1=6 再 $x-1=5 最后 $x=5 $y=6 2.$bar = ++$y + ++$x 这里是先(计算再赋值),所以$bar = (y+1) + (x+1) = 13 而 $x=6 $y=7 3.$cup = $x-- + $y-- $cup = 6+7 =13 然后再x-1=5 y-1=6 4.$paper = ++$x + $x++ (这里要看仔细了++$x是先计算再赋值,而$x++ 是先赋值再计算) $paer = (x+1)+ [x=(x+1)] =6+6=12 ++$x这里 = 后面的$x 这时,$x=x+1=7 $y=6 5.$water = $y-- + $x-- 到这里就简单了还是先赋值 所以$water=7+6=13 最后的$x=7-1=6 $y=6-1=5 计算 $water + $paper = 13+12=25

4年前 0

τ、過客

τ、過客

++i 顾名思义就是先加一在返回i :先加后返回 i++ 是先返回i然后在加一:先返回后加 加减同理

4年前 0

博龙

博龙

符号 说明 $x++ 先赋值后加 $x-- 先赋值后减 ++$x 先加后赋值 --$x 先减后赋值

4年前 0

gdvv

gdvv

笔记那个第一个加法就错了,别看他的

4年前 1

课件暂不提供下载,工作人员正在整理中,后期请多关注该课程~