# PHP 垃圾回收机制(GC)
## 垃圾回收:
垃圾回收(Garbage Collection)简称GC,看文的意思相当于垃圾回收再利用。转化成程序语言就是对于不再使用的变量占用内存的释放。
## 内存泄漏:
进一步讲解PHP垃圾回收机制之前,我们要先讲一下内存泄漏。
内存泄漏(Memory Leak)是指程序中已动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至出现系统崩溃的现象。
所以对于这些动态分配的内存一定要进行释放。
## PHP垃圾回收机制:
在C语言当中内存的释放是需要我们手动去处理的,虽然PHP底层也是用C实现的,但是官方人员已经考虑到了这个问题,已经实现了自动垃圾回收机制,这也就是我们PHP程序员基本上不用去关心内存溢出的问题,随意的去使用变量的原因。
## PHP回收机制的原理:
1.我们要先了解PHP变量是如何存在于内存当中的(引用计数和写时拷贝)
2.我们要了解PHP是什么时间去处理要回收的变量的()
## 官方机制讲解:
1.[引用计数](https://www.php.net/manual/zh/features.gc.refcounting-basics.php)
2.[回收周期(Collecting Cycles)](https://www.php.net/manual/zh/features.gc.collecting-cycles.php)
3.[性能方面考虑的因素](https://www.php.net/manual/zh/features.gc.performance-considerations.php)