2012-03-12 23 views
3

如果我有以下文件:獲取在PHP中調用函數的文件的命名空間?

<?php 
namespace SampleProject; 

hello_world(); 

,這在一個單獨的文件:

<?php 
function hello_world() { 

} 

反正對於hello_world()函數獲取調用它的文件的命名空間(所以SampleProject

+1

由於一個文件可以包含多個命名空間,這似乎是一個誤導的問題。你真的想用這個解決什麼問題? – deceze 2012-03-13 00:09:14

+0

[什麼是XY問題?](http://meta.stackexchange.com/q/66377/164291) – 2012-03-13 03:18:49

回答

2

取決於您想要對該名稱空間信息做什麼,但可以向該函數添加一個參數,然後像這樣調用它:

hello_world(__NAMESPACE__); 

瞭解更多關於php documentation中的__NAMESPACE__常數。

在函數內部添加__NAMESPACE__只會給出一個空字符串,因爲您的函數不在名稱空間內。