具體查看php文檔 垃圾回收機(jī)制.

垃圾回收.png
在php5.3之前php使用引用計(jì)數(shù)的方式管理內(nèi)存。所有變量保存在zval變量容器中,每引用一次,計(jì)數(shù)加一。引用次
數(shù)為0是清空。但是如果出現(xiàn)循環(huán)引用的情況下,引用次數(shù)一直累加,無(wú)法釋放,內(nèi)存就會(huì)發(fā)生泄漏,如圖5.2
所示,內(nèi)存使用量會(huì)一直增加。
而在php5.3且之后做了優(yōu)化。但內(nèi)存滿一定空間之后就會(huì)開(kāi)始進(jìn)行清理,所以如圖php5.3就會(huì)出現(xiàn)鋸齒的形
狀,避免了過(guò)多的內(nèi)存泄漏。
編寫(xiě)代碼時(shí)候如何注意內(nèi)存泄漏?
- 擴(kuò)大php內(nèi)存分配
- 引用完變量手動(dòng)刪除
- 分批處理數(shù)據(jù)