微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从php中的一个类在不同场景中显示不同的部分字段

如何解决如何从php中的一个类在不同场景中显示不同的部分字段

如果标题没有足够清楚地描述我的问题,我深表歉意。

假设我有一个使用 getter() 和 setter() 从数据库映射表的类,如下所示:

class MyTable{

private $_a='';
private $_b='';
private $_c='';


public function __construct($__a=null,$__b=null,$__c=null)
{
    self::set_a($__a);
    self::set_b($__b);
    self::set_c($__c);
}

function get_a()
{
    return $this->_a;
}

function get_b()
{
    return $this->_b;
}

function get_c()
{
    return $this->_c;
}

function set_a($_a): void
{
    $this->_a = $_a;
}

function set_b($_b): void
{
    $this->_b = $_b;
}

function set_c($_c): void
{
    $this->_c = $_c;
}

}

我的问题是在另一个类 foo() 中,当我创建类 MyTable 的实例时,我实际上只需要字段 $_a 和 $_b,并且我不希望 $_c 包含在此实例中。>

在类 bar() 中,我只需要字段 $_c,我不希望 $_a 和 $_b 出现在这个实例中;

我该怎么做?我知道在 C# 中,我必须为每个类 foo() 和 bar() 创建一个 viewmodel,我可以在 PHP 中做同样的事情,但是,是否可以只用一个类 MyTable() 来实现,而无需创建多个课程?

这甚至可能吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。