父类应该包含在子类中吗? PHP

时间:2015-06-15 15:53:26

标签: php oop

Lets说我有4个文件,其中3个包含每个类:

animal.php

class animal
{}

cat.php

class cat extends animal
{}

dog.php

class dog extends animal
{}

main.php

$cat = new cat();
$cat->doSomething();
$dog = new dog();
$dog->runAroundTryToCatchTail();

我想知道在每个子类或 main.php 中包含或要求 animal.php 是否更好?

换句话说,它是否更好:

main.php

require_once('animal.php');
require_once('cat.php');
require_once('dog.php');
$cat = new cat();
$cat->doSomething();
$dog = new dog();
$dog->runAroundTryToCatchTail();

dog.php

require_once('animal.php');
class dog extends animal
{}

cat.php

require_once('animal.php');
class dog extends animal
{}

更新

事实上,我要知道的是:

在选择我应该包含课程档案的地方时,是否有任何SOLID校长或GRASP或任何其他OOP实践?

1 个答案:

答案 0 :(得分:1)

最佳做法是使用自动加载器加载所需的类并遵循PSR-0标准。

  

了解有关PSR-0的更多信息

https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md

http://www.php-fig.org/psr/psr-0/

  

详细了解Autoloader

http://php.net/manual/en/language.oop5.autoload.php

  

如何自动加载PSR-0之后的文件?

http://www.sitepoint.com/autoloading-and-the-psr-0-standard/

根据

弃用更新PSR-0

http://www.php-fig.org/psr/psr-0/

您可以将PSR-4用作新的自动加载标准

http://www.php-fig.org/psr/psr-4/