Heim  >  Artikel  >  Backend-Entwicklung  >  php中$this的问题

php中$this的问题

WBOY
WBOYOriginal
2016-06-06 20:45:311028Durchsuche

请看以下代码

<code>public function setOption($options)
{    
$vars = get_object_vars($this);

foreach($options as $key=>$val){
    。。。
  。。。
}
</code>

}

以上是老师的一段案例代码
我想问的是,第三行,函数中的($this)为什么不能直接写($options)
问题有点菜~还请多多指教

回复内容:

请看以下代码

<code>public function setOption($options)
{    
$vars = get_object_vars($this);

foreach($options as $key=>$val){
    。。。
  。。。
}
</code>

}

以上是老师的一段案例代码
我想问的是,第三行,函数中的($this)为什么不能直接写($options)
问题有点菜~还请多多指教

打个比方吧,setSun是太阳,实参($planet)是它的卫星,$this是整个银河系。地球被定义为银河系的一员,我们能用$this->earth找到它。将它赋给$planet,地球就环绕着太阳。同样$this->mars = $planet,火星就环绕着的太阳。但太阳有8个卫星,我们应该先用get_object_vars($this)将所有银河系的星星都列出来,从中找到出这8个列成数组赋给$planet,于是setSun才能作为太阳系运行起来。

$this是指当前这个类,你可以var_dump($this)打印出来看一下。和$options是两码事

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn