10
class foo{
    ....
}

假设该类存在于我的代码中,然后我不再需要该类并希望将其删除(因此以后可以将其替换为新类)

是否可以从运行时删除整个类?

4

3 回答 3

8

不,您不能在运行时删除或大幅修改 PHP 类(或函数)。

于 2012-07-18T05:43:03.523 回答
5

使用 unset($classVariableName) 删除实例,它将释放内存。

如果类的定义在运行时不应该存在,则需要将该类添加到单独的文件中,并且仅在需要时才应包含该文件。这样您就可以拥有两个具有相同类名的不同类定义。但是有两个具有相同名称的不同定义并不是一个好方法。

于 2012-07-18T05:50:54.240 回答
2

你可以使用 unset() 来删除一个对象,但是类本身不能被删除。老实说,在运行时修改这样的代码听起来很笨拙和令人困惑——没有更好的选择吗?

于 2012-07-18T05:54:53.363 回答