由于我刚刚从另一种语言跳到PHP,我想问一下在类中添加扩展名的正确方法.我的配置现在如下:
class A extends B {
use C;
public function a(){
}
}
我需要在A类中添加一些额外的函数,但从逻辑上划分它们,所以我虽然会使用特征C.
所以我的问题是 – 我可以在我的特质C中使用函数a()吗?我知道我可以在特质C中定义抽象函数a(),但我相信这根本不是一个好习惯.也许我可以以某种方式将其注入特质或者这也是一种不好的做法?
解决方法:
有可能,选择是开发人员的自由裁量权,最佳解决方案是基于经验.
trait C {
public function hello() {
parent::a();
echo 'World!';
}
}
class B {
function a() {
echo "hello";
}
}
class A extends B{
use C;
}
(new A())->hello(); // helloWorld!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。