init()
方法:
public function init()
{
}
__construct()
方法:
public function __construct()
{
}
那么,他们之间有什么不同,哪些应该使用?
答案 0 :(得分:9)
init()
是从yii\base\Object
扩展的任何对象的方法(并且大多数对象都从它扩展)。
来自官方文档:
除了属性功能外,Object还引入了一个重要的功能 对象初始化生命周期。特别是,创造一个新的 Object的实例或其派生类将涉及以下内容 生命周期顺序:
- 调用类构造函数;
- 根据给定的配置初始化对象属性;
- 调用init()方法。
醇>在上文中,步骤2和3都发生在课程结束时 构造函数。建议您执行对象初始化 在init()方法中,因为在那个阶段,对象配置 已经应用了。
建议使用init()
,您甚至可以从源代码和扩展程序中看到它,但在某些情况下,您可以使用__construct()
。有一些建议要实施,您可以在官方文档here的同一页面上找到它。
__constuct
是一种本机PHP语言功能,您可以在this section中的PHP官方文档中阅读有关该功能的更多信息。