php类和扩展类

时间:2017-10-23 15:50:38

标签: php class

我想问一个与php类有关的问题!我们假设我有一个客户的桌子,一张街道桌子和另一张叫做城镇的桌子。在OOP中,我必须假设我有一个客户班,一个街道班和一个城镇班。所以每个班级都与另一个班级有关,如下所示:

客户端: clientId,clientFirstname1,clientLastname1,clientAddress,clientStreetCode,clientTownCode,clientPostCode .....

Streets: streetCode,streetName,townCode

城镇: townCode,townName

我想问的是,如果我创建一个客户端记录,我应该将一个类扩展到另一个类,还是将它们保留为NOT EXTENDED,然后将它们作为单个类包含在php中?

1 个答案:

答案 0 :(得分:1)

在OOP中扩展不是is-a关系。就三个类ClientCityStreet而言,其中任何一个都不是is-a个实例。

相反,你应该只使用引用。 ClientStreetStreetCity

class Client {
    /**
     * @var Street
     */
    protected $street;

    // ....
}

class Street {
    /**
     * @var City
     */
    protected $city;

    // ...
}

class City {
    // ...
}

也许您还应该考虑引入一个新的课程Address,其中包含对CityStreet的引用,而不是Street的引用City