亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php中關于while條件的問題

php中關于while條件的問題

長風吹云 2016-11-01 16:18:11
while (!$a) { $a++; echo $a; static $a = 0;?}當 $a 沒有初始值時,為什么循環體還會被執行,難道沒有初始化的變量會被自動著判斷為 0 ?如果是這樣,為什么還是會報 Notice 級的警告?
查看完整描述

3 回答

已采納
?
Tobey_滔

TA貢獻242條經驗 獲得超128個贊

分析: ?結果會輸出11..其實是2個1來的...(可以空格分開看一下!!)..那么么說while走了2次!...

由于$a是沒有聲明的..那么絕對是會報Notice...僅僅是警告性錯誤!!不會影響代碼執行的...

沒有聲明的變量$a其實就是null ? 你可以var_dump()進行驗證...

!$a ==> ?!null ?==> true...因此循環會走第一次...$a++ ?=> null++ ?==> ?1 輸出第一個1

然后$a被聲明為靜態的$a = 0; ? 這樣第二次循環就不解釋了!!!還會輸出一個1..

因此一共輸出2個1

查看完整回答
2 反對 回復 2016-11-01
?
Lemon156

TA貢獻91條經驗 獲得超32個贊

$a沒有初始化的時候是NULL,在!$a之后變成了布爾值是true,所以while循環是會執行的

望采納

查看完整回答
反對 回復 2016-11-01
  • 3 回答
  • 0 關注
  • 1816 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號