推薦:《PHP視頻教程》
闡述:使用PHP語言有一段時間了,今天看見某段代碼中的static 關鍵字。突然腦海中想到 static 和 沒有static 區別是什么呢?通過案例來講解,需求是我指定一個目錄。統計出這個目錄下“有多少個目錄數”和“有多少個文件”以及分別顯示有哪些“文件夾/ 文件”。
1, 這是要獲取的目錄結構,共計是(3個目錄):
2, 在此就直接貼代碼了,這是“沒寫static” 關鍵字運行結果:
發現和“源目錄”數量和go函數獲取的不一致,測試結果:
3,加上“static” 關鍵字后,經過確認“文件和目錄”都均是正確:
總結:有的人就好奇為啥加上static 關鍵字就正確了呢? 那是因為static 變量的生命周期超過了函數生命周期,最終變量還在內存中。去掉后成局部變量函數執行完即釋放,所以保存下來的變量是最后一次的執行結果!