2009-10-15 80 views
1

我有一個守護進程在後臺處理相當多的MVC邏輯,包括它需要的類。然而,有時候,它會在一個週期內包含來自不同模塊的兩個相同命名的類。理想情況下,我想在再次包含它之前對其進行「undeclare」,但在PHP手冊中找不到,如果可能的話。Undeclare a class in PHP

事情是這樣的:

//first foo 
class foo(){ 

} 

//undeclare foo 
undeclare foo; 

//create new foo 
class foo(){ 

} 

回答

10

這是不可能的 「undeclare」 一類。

你或許應該看看PHP的namespacing或者,使用約定命名相似的類

Application_Module_Class 

,這樣你就可以調用

$x = new Application_Foo_Bar; 

包括來自於Foo模塊的酒吧類

這也很適合使用autoload功能

+0

不幸的是,這些解決方案目前都不可能適用於我的情況。 – clops

+0

你使用PHP 5.3嗎?這將提供一個解決方案。 – powtac

+0

在當前狀態下,應用程序無法移植到PHP 5.3。它超過250 Mb的代碼;) – clops