2012-03-04 33 views
2

我想獲得已經在一個操作的上下文中運行的函數的列表。這就是需求出現的地方。PHP函數可以動態地知道它的名字嗎?

有沒有辦法像這樣的工作?

function funcX() 
{ 
    echo this.nameOrSomethingHere; //outputs funcX 
} 

由於this example演示,有可能在Javascript中實現此功能。

我總是可以選擇一種替代解決方案來照顧我的原始需求,例如使用替代方法如下;

function funcX() 
{ 
    $this_function_name = "funcX"; 
    Add_this_to_the_already_executed_functions_list($this_function_name);  
} 

而在這裏,在Add_this_to_the_already_executed_functions_list功能是接受傳遞的字符串,並將其添加到全局定義的數組,以便在關機過程結束時,你能得到的已經在已經運行的所有功能的視圖最後一頁。

上述方法可行,但很明顯,它不是優雅的,因爲它不是動態的。

這本來是很高興能夠做這樣的事

function funcX() 
{ 
    Add_this_to_the_already_executed_functions_list(this.????);  
} 

的問題是,如果有一種方法在PHP中做到這一點?

+0

有趣的是,爲什麼你想做到這一點我可以問嗎?我建議看看XDebug + KCacheGrind – 2012-03-04 15:05:27

回答

相關問題