利用PHP怎么实现一个布尔值的自增与自减功能?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
++a 表示取 a 的地址,增加内存中 a 的值,然后把值放在寄存器中
a++ 表示取 a 的地址,把 a 的值装入寄存器中,然后增加内存中 a 的值
我打开一个编辑器,去确认一下这个结果
$a = true; var_dump(--$a); echo PHP_EOL; echo $a; $b = false; echo PHP_EOL; var_dump(++$b);
运行最后输入结果如下
bool(true)
1
bool(false)
发现结果和之前设想的不太对,PHP 对于布尔值的自增运算没有做任何处理,而自增后为 1 是因为我们使用了 echo 去输出,导致 bool 被强转
去查询 PHP 的官方文档,没想到有一行很明显的提示
Note: 递增/递减运算符不影响布尔值。递减 NULL 值也没有效果,但是递增 NULL 的结果是 1。
看完上述内容,你们掌握利用PHP怎么实现一个布尔值的自增与自减功能的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。