我遇到了以下PHP代码问题:
目前我的PHP代码没有使用任何名称空间。我已对包含文件foobarinc.php
进行了修改,因此我现在有两个版本foobarinc-v1.php
(旧版本)和foobarinc-v2.php
(新版本)。包含文件具有一些功能(例如foo()
),它们存在于两个文件中。目前foobarinc-v2.php
有一些错误,所以我需要使用来自foo()
的{{1}}调试我的代码(因为至少我知道它有效)但我还需要调用{{1}来自其他地方的fooinc-v1.php
。我不想在`foobarinc-v1.php文件中更改任何内容,因为我将需要它,但我愿意在必要时为文件添加命名空间。我可以使用PHP命名空间来实现我的目的吗?
e.g。我想这样做:
main.php:
foo()
如何修复上述代码以实现我的目的?
答案 0 :(得分:2)
您需要做的是在foobarinc-v1.php命名空间中添加如下内容:
namespace foobarinc1;
foobarinc-v2.php几乎相同:
namespace foobarinc2;
Main.php
include 'foobarinc-v1.php';
include 'foobarinc-v2.php';
use foobarinc1;
use foobarinc2;
foobarinc1->foo();
foobarinc2->foo();
你可以在这里找到更多: http://php.net/manual/pl/language.namespaces.php