我有一个完整的表单创建系统。有许多不同的问题类型,我必须检查这个人的答案是否正确。
所有类型的问题都有自己的类,将始终称为 ItemClass,这个类在它自己的文件中。
每次有人问问题时,我都会包含文件,但问题是:我必须在一个 PHP 文件中检查不同类型的问题。然后出现错误 - ItemClass 已经声明。
有什么方法可以取消设置类吗?
最佳答案
不,不可能“取消定义”现有类。
在您的情况下,您不应该有多个具有相同名称的类:每个类都应该具有不同/不同的名称,并且您应该修改使用这些名称的方式,以便您的代码处理未命名的类元素类
。
例如,您可以:
ItemClass_Type1
在itemclass_type1.php
ItemClass_Type2
在itemclass_type2.php
等等——如果需要/如果有意义的话,这些类都可以扩展同一个基类。
(有一段时间,我想也许 runkit 可以帮助实现“取消定义一个类”的想法;但似乎没有一个函数可以做到这一点——而且这个扩展不太稳定,不应该不能在生产服务器上使用)
关于php - 我怎样才能 "unset"一个已经声明的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2236294/