我正在查看 PHP 文档并看到一些注释,其中变量是在类的构造函数之外初始化的,类似于以下内容:
classMyClass {
private $count = 0;
public function __construct() {
//Do stuff
}
}
在PHP Objects, Patterns, and Practice中,作者建议仅将构造用于属性的初始化,将任何繁重的工作或复杂的逻辑推迟到专门的方法中。本教程(我在 Google 上找到的一个快速示例)还建议使用构造函数来初始化属性:http ://www.killerphp.com/tutorials/object-oriented-php/php-objects-page-3.php 。
为什么要在构造函数之外初始化变量?这只是草率的编码,还是有理由做这样的事情?我不得不说,直到最近,我在构造函数之外初始化了默认值,并且似乎没有任何一种方式优于另一种方式的编程优势。