0

函数运行后函数中的变量会被销毁吗?

class B {
   function C() {
       $x = "123456";
       echo "XXX".$x;
       // After this function is finished, will $x be destroyed by default to save memory in PHP?
   }
}
class A {
   function F1() {
       return new Class_B();
   }

   function F2() {
       $this->F1()->C();
       // After this function is finished, will F1 be destroyed by default to save memory and CPU in PHP?
   }
}
4

2 回答 2

0

是的,它将被“销毁”,以便可以重复使用它占用的内存。

于 2012-04-22T21:53:20.763 回答
0

关于$x:是的,运行完成后会进行垃圾回收B::C()

关于$this->F1()->C()F1方法本身不会被销毁,但是B它返回的实例会在F2运行结束后被销毁。

于 2012-04-22T21:54:33.843 回答