我面临以下PHP代码问题:
目前我的 PHP 代码没有使用任何命名空间。我对包含文件进行了修改,foobarinc.php
因此我现在拥有两个版本foobarinc-v1.php
(旧版本)和foobarinc-v2.php
(新版本)。包含文件具有两个文件中都存在的一些功能(例如foo()
)。目前foobarinc-v2.php
有一些错误,所以我需要使用foo()
from调试我的代码fooinc-v1.php
(因为至少我知道它有效)但我还需要foo()
从foobarinc-v2.php
其他地方调用。我不想更改 `foobarinc-v1.php 文件中的任何内容,因为我将需要它,但如有必要,我愿意为文件添加命名空间。我可以使用 PHP 命名空间来实现我的目的吗?
例如我想做:
主.php:
include("includes/foobarinc-v2.php");
function main() {
hello(); // from main.php
namespace myDebugNameSpace {
include("includes/foobarinc-v2.php");
$a = foo(); // foo() version 2
outerNameSpace::bar($a); // bar() version 1
}
world(); // from main.php
foo(); // foo() version 1
}
main();
如何修复上述代码以实现我的目的?