经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » PHP » 查看文章
以php中的自增自自减运算符操作(整型,浮点型,字符串型,布尔型,空类型)数据
来源:cnblogs  作者:hellozxcv  时间:2019/10/21 9:01:36  对本文有异议
  1. 1 // 环境
  2. 2 //
  3. 3 // php版本
  4. 4 // PHP 7.0.33-0+deb9u1 (cli) (built: Dec 7 2018 11:36:49) ( NTS )
  5. 5 // Copyright (c) 1997-2017 The PHP Group
  6. 6 // Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
  7. 7 // with Zend OPcache v7.0.33-0+deb9u1, Copyright (c) 1999-2017, by Zend Technologies
  8. 8 //
  9. 9 // vs code 信息
  10. 10 // 版本: 1.36.0
  11. 11 // 提交: 0f3794b38477eea13fb47fbe15a42798e6129338
  12. 12 // 日期: 2019-07-03T13:20:56.241Z
  13. 13 // Electron: 4.2.5
  14. 14 // Chrome: 69.0.3497.128
  15. 15 // Node.js: 10.11.0
  16. 16 // V8: 6.9.427.31-electron.0
  17. 17 // OS: Linux x64 4.15.0-30deepin-generic
1.对整型前【后】自增(自减),在获取整型的值之前【后】,值递增(递减),结果为整型。
  1. 1 $a = 1;
  2. 2 var_dump( $a++ );
  3. 3 $a = 1;
  4. 4 var_dump( ++$a );
  5. 5 $a = 1;
  6. 6 var_dump( $a-- );
  7. 7 $a = 1;
  8. 8 var_dump( --$a );
  9. 9
  10. 10 // int(1)
  11. 11 // int(2)
  12. 12 // int(1)
  13. 13 // int(0)
 
2.对浮点型前【后】自增(自减),在获取浮点型的值之前【后】,值递增(递减),结果为整数时,输出整数,但类型依然为浮点型。
  1. 1 $a = 1.0;
  2. 2 var_dump( $a++ );
  3. 3 var_dump( $a );
  4. 4 $a = 1.0;
  5. 5 var_dump( ++$a );
  6. 6 $a = 1.0;
  7. 7 var_dump( $a-- );
  8. 8 var_dump( $a );
  9. 9 $a = 1.0;
  10. 10 var_dump( --$a );
  11. 11
  12. 12 // float(1)
  13. 13 // float(2)
  14. 14 // float(2)
  15. 15 // float(1)
  16. 16 // float(0)
  17. 17 // float(0)

 

3.对字符串型整数前自增(自减),在获取字符串型整数之前,值递增(递减),结果为整型。
  1. 1 $a = '1';
  2. 2 var_dump( ++$a );
  3. 3 $a = '1';
  4. 4 var_dump( --$a );
  5. 5
  6. 6 // int(2)
  7. 7 // int(0)

 

4.对字符串型整数后自增(自减),在获取字符串型整数之后(获取的是字符串型),值递增(递减),结果为整型。
  1. 1 $a = '1';
  2. 2 var_dump( $a++ );
  3. 3 var_dump( $a );
  4. 4 $a = '1';
  5. 5 var_dump( $a-- );
  6. 6 var_dump( $a );
  7. 7
  8. 8 // string(1) "1"
  9. 9 // int(2)
  10. 10 // string(1) "1"
  11. 11 // int(0)

 

5.对字符串型浮点数前自增(自减),在获取字符串型浮点数之前,值递增(递减),结果为整数时,输出整数,结果为浮点型。
  1. 1 $a = '1.0';
  2. 2 var_dump( ++$a );
  3. 3 $a = '1.0';
  4. 4 var_dump( --$a );
  5. 5
  6. 6 // float(2)
  7. 7 // float(0)

 

6.对字符串型浮点数后自增(自增),在获取字符串型浮点数之后(获取的是字符串型),值递增(递减),结果为整数时,输出整数,结果为浮点型。
  1. 1 $a = '1.0';
  2. 2 var_dump( $a++ );
  3. 3 var_dump( $a );
  4. 4 $a = '1.0';
  5. 5 var_dump( $a-- );
  6. 6 var_dump( $a );
  7. 7
  8. 8 // string(3) "1.0"
  9. 9 // float(2)
  10. 10 // string(3) "1.0"
  11. 11 // float(0)

 

7.对字符串型字符序列前【后】自增(字符串不能自减,只支持纯字母),在获取字符串型字符序列之前【后】,值类型不变,
值的结果分为如下几种情况:
第一种,字符序列全是小写,满小z进一,类似加法。
第二种,字符序列全是大写,满大Z进一,也类似加法。
第三种,字符序列包含小写和大写,如果某位原本就是大写,那么满大Z进一位,且这一位永远不会变成小写;如果某位原本就是小写,那么满小z进一位,这一位永远也不会变成大写。
  1. 1 $a = 'az';
  2. 2 var_dump( ++$a );
  3. 3 $a = 'az';
  4. 4 var_dump( $a++ );
  5. 5
  6. 6 $a = 'AZ';
  7. 7 var_dump( ++$a );
  8. 8 $a = 'AZ';
  9. 9 var_dump( $a++ );
  10. 10
  11. 11 $a = 'aZ';
  12. 12 var_dump( ++$a );
  13. 13 $a = 'aZ';
  14. 14 var_dump( $a++ );
  15. 15
  16. 16 // string(2) "ba"
  17. 17 // string(2) "az"
  18. 18 // string(2) "BA"
  19. 19 // string(2) "AZ"
  20. 20 // string(2) "bA"
  21. 21 // string(2) "aZ"

 

8.对布尔型前【后】自增【减】,布尔型true和布尔型false值和类型不会改变。
  1. 1 $a = true;
  2. 2 var_dump( $a++ );
  3. 3 var_dump( $a );
  4. 4 $a = true;
  5. 5 var_dump( ++$a );
  6. 6 $a = true;
  7. 7 var_dump( $a-- );
  8. 8 var_dump( $a );
  9. 9 $a = true;
  10. 10 var_dump( --$a );
  11. 11
  12. 12 $a = false;
  13. 13 var_dump( $a++ );
  14. 14 var_dump( $a );
  15. 15 $a = false;
  16. 16 var_dump( ++$a );
  17. 17 $a = false;
  18. 18 var_dump( $a-- );
  19. 19 var_dump( $a );
  20. 20 $a = false;
  21. 21 var_dump( --$a );
  22. 22
  23. 23 // bool(true)
  24. 24 // bool(true)
  25. 25 // bool(true)
  26. 26 // bool(true)
  27. 27 // bool(true)
  28. 28 // bool(true)
  29. 29 // bool(false)
  30. 30 // bool(false)
  31. 31 // bool(false)
  32. 32 // bool(false)
  33. 33 // bool(false)
  34. 34 // bool(false)

 

9.对空类型null前自增,在获取空类型null之前,值递增,结果为整型。
  1. 1 $a = null;
  2. 2 var_dump( ++$a );
  3. 3
  4. 4 // int(1)

 

10.对空类型null前自减,在获取空类型null之前,对其进行自减,空类型null不会改变。
  1. 1 $a = null;
  2. 2 var_dump( --$a );
  3. 3
  4. 4 // NULL

 

11.对空类型null后自增,在获取空类型null之后(获取的是空类型null),值递增,结果为整型。
  1. 1 $a = null;
  2. 2 var_dump( $a++ );
  3. 3 var_dump( $a );
  4. 4
  5. 5 // NULL
  6. 6 // int(1)

 

12.对空类型null后自减,在获取空类型null之后(获取的是空类型null),对其进行自减,空类型值null不会改变。
  1. 1 $a = null;
  2. 2 var_dump( $a-- );
  3. 3 var_dump( $a );
  4. 4
  5. 5 // NULL
  6. 6 // NULL

 

原文链接:http://www.cnblogs.com/zxcv123/p/11704894.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号