- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我需要一个继承的静态函数“call”来调用另一个已被覆盖的静态函数“inner”。我可以使用后期静态绑定(bind)来做到这一点,但我的主机还没有 php5.3,所以我需要解决它。
class ClassA{
static function call()
{
return self::inner();
}
static function inner(){
return "Class A";
}
}
class ClassB extends ClassA{
static function inner(){
return "Class B";
}
}
echo "<p>Class A = " . ClassA::call();
echo "<p>Class B = " . ClassB::call();
我希望输出为:
A级=A级
B类=B类
但它是什么:
A级=A级
B 类 = A 类
我的直觉告诉我,我应该能够在 call() 中编写一些东西来检测调用“call()”时引用的对象。因此,它不是 self::inner(),而是类似于 calledclass::inner() 的东西。从原始方法调用中检测要调用的 inner() 的正确版本。
最佳答案
如果性能不是问题,您可以使用 debug_backtrace() 找到被调用的类:
$bt = debug_backtrace();
return get_class($bt[1]['object']);
关于php - 在 php 5.3 之前伪造后期静态绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/890505/
总结 我需要在 Camel 服务器 in-modify-out 过程中构建一组统计数据,并将这些统计数据作为一个对象(单个 json 日志行)发出。这些统计数据需要包括: input file met
某个元素使用以下 CSS 功能产生了惊人的结果: 盒子阴影;边界半径;边框和背景上的 RGBA 颜色。 问题是前两个需要延迟 Firefox/Chrome/Safari 浏览器,第二个不兼容 IE8
在我的 Rails 应用程序中有这段代码: window.onload = -> $("#mycontainer").typewriter() $("#div1").fadeIn("slow"
我想检查我的 api 是否工作正常。我有一个只有 post 请求而没有 GET 的 api。 教程在这里:https://learn.microsoft.com/en-us/azure/applica
我想检查我的 api 是否工作正常。我有一个只有 post 请求而没有 GET 的 api。 教程在这里:https://learn.microsoft.com/en-us/azure/applica
我是一名优秀的程序员,十分优秀!