2011-10-11 57 views
4

我们正在开发一个带有插件的PHP项目。我们的插件包含一个开源类。如何在PHP中保护课程

另一个插件使用这个相同的类。

如果两个插件都包含相同的类,PHP将抛出“无法重新声明类”错误。

我们不能问class_exists是否因为我们想使用我们的类文件,因为其他插件可能会使用较旧或较新的版本。

我们也不想重命名该类,因为我们希望稍后可以将类文件轻松升级到新版本。

我们无法更改其他插件,因此当包含此文件以避免错误时,我们可以做些什么吗?

回答

3

最好的解决方案是将两个类放在不同的namespaces之间,但只有PHP 5.3支持。

0

使用require_ 一次(),而不是包括()(或使用自动加载磁带机)