PHP 布爾值的自增與自減的實現(xiàn)方法
在上午和業(yè)務(wù)需求戰(zhàn)斗結(jié)束之后,準備打開群看看各位老司機有沒有看車,突然看到 @E舞九天 II 發(fā)的一些消息
他發(fā)現(xiàn),PHP 的布爾值自增,無論自增多少遍,最后輸出的都是 1
這就比較有趣了~
自增和自減,++$a 和 $a++ 的區(qū)別大家都知道
++a 表示取 a 的地址,增加內(nèi)存中 a 的值,然后把值放在寄存器中
a++ 表示取 a 的地址,把 a 的值裝入寄存器中,然后增加內(nèi)存中 a 的值
我打開一個編輯器,去確認一下這個結(jié)果
$a = true; var_dump(--$a); echo PHP_EOL; echo $a; $b = false; echo PHP_EOL; var_dump(++$b);
運行最后輸入結(jié)果如下
bool(true)
1
bool(false)
發(fā)現(xiàn)結(jié)果和之前設(shè)想的不太對,PHP 對于布爾值的自增運算沒有做任何處理,而自增后為 1 是因為我們使用了 echo 去輸出,導(dǎo)致 bool 被強轉(zhuǎn)
去查詢 PHP 的官方文檔,沒想到有一行很明顯的提示
Note: 遞增/遞減運算符不影響布爾值。遞減 NULL 值也沒有效果,但是遞增 NULL 的結(jié)果是 1。
總結(jié)
以上所述是小編給大家介紹的PHP 布爾值的自增與自減,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Yii框架結(jié)合sphinx,Ajax實現(xiàn)搜索分頁功能示例
這篇文章主要介紹了Yii框架結(jié)合sphinx,Ajax實現(xiàn)搜索分頁功能,結(jié)合實例形式分析了Yii框架中使用sphinx與Ajax實現(xiàn)搜索結(jié)果的分頁展示效果,需要的朋友可以參考下2016-10-10掌握Laravel框架中容器的管理依賴實現(xiàn)松耦合
這篇文章主要為大家介紹了掌握Laravel框架中容器管理依賴實現(xiàn)松耦合,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-10-10laravel學(xué)習(xí)筆記之模型事件的幾種用法示例
這篇文章主要給大家介紹了關(guān)于laravel學(xué)習(xí)筆記之模型事件用法的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用laravel具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考借鑒,下面來跟著小編一起學(xué)習(xí)學(xué)習(xí)吧。2017-08-08Laravel框架Eloquent ORM修改數(shù)據(jù)操作示例
這篇文章主要介紹了Laravel框架Eloquent ORM修改數(shù)據(jù)操作,結(jié)合實例形式詳細分析了laravel框架更新數(shù)據(jù)的兩種常見操作技巧,需要的朋友可以參考下2019-12-12