覆盖扩展类中的命名空间使用
是否可以在不重写扩展类中的函数的情况下覆盖父类使用的命名空间?
为了澄清,我写了一个例子:
我有两个这样的类(class):
namespace one;
class hey
{
public static function say()
{
echo "hey";
}
}
和
namespace two;
class hey
{
public static function say()
{
echo "ho";
}
}
现在我使用了这个类中的命名空间:
use one\hey;
class saysomething
{
public static function main()
{
hey::say();
}
}
现在我想扩展最后一节课:
class extended extends saysomething
{
}
extended::main();
在这个类中,我想在不覆盖函数的情况下使用命名空间“二\一”,这可能吗? *如果是,如何?
感谢您的时间。
最佳答案
您必须定义 extended::main()
内extended
类,像这样:
use two\hey;
class extended extends saysomething
{
public static function main()
{
hey::say(); // will call two/hey::say method
}
}
命名空间在这里无济于事。
关于php - 在 PHP 中覆盖扩展类中的命名空间使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39915887/