我正在尝试从基类中调用my方法的子类中获取方法的名称。我怎么能得到这个?
class MyBaseClass {
protected static function mybasemethod() {
// how can I get the name of the method that called this?
// I'm looking for 'myothermethod'
}
}
class MyClassA extends MyBaseClass {
protected static function myothermethod() {
self::mybasemethod();
}
}
答案 0 :(得分:0)
要获取类的名称,您可以尝试使用函数 get_class_methods() To know more use this link
a[i] = a[++i];
答案 1 :(得分:-1)
感谢您激励今天的学习机会。我经常无所事事地想知道这是否可以做到,但从不打扰调查。现在,我知道它确实可以完成!
我在我正在测试的例程中测试了以下代码片段。
System.Diagnostics.StackTrace trace = new System.Diagnostics.StackTrace ( false );
System.Diagnostics.StackFrame frame = trace.GetFrame ( 1 );
Console.WriteLine ( "Calling method = {0}" , frame.GetMethod ( ).Name );
输出如下。
Calling method = UtilsExercises
UtilsExercises
是调用嵌入代码的例程的方法的名称。
前面的示例是对https://msdn.microsoft.com/en-us/library/system.diagnostics.stacktrace(v=vs.110).aspx的 StackTrace类文档中显示的示例的修改。