菜鸟学php,不明白,求大神解释!关于$this->

<?phpclassPerson{private$name;private$sex;private$age;privatefunction__get($property_... <?php
class Person{
private $name;
private $sex;
private $age;

private function __get($property_name)
{
if(isset($this->$property_name)) //就是这里不懂!!!为什么有的程序是$this->$property_name,有的是$this->property_name.我的意思就是为啥有的$this->后面还有“$”符号,有的却没有。有和没有分别代表什么?
{
return($this->$property_name);
}else {
return(NULL);
}
}

private function __set($property_name, $value)

{
$this->$property_name = $value;
}

private function __isset($nm)
{
echo "isset()函数测定私有成员时,自动调用<br>";
return isset($this->$nm);
}

private function __unset($nm)
{
echo "当在类外部使用unset()函数来删除私有成员时自动调用的<br>";
unset($this->$nm);
}
}
$p1=new Person();
$p1->name="this is a person name";

echo var_dump(isset($p1->name))."<br>";
echo $p1->name."<br>";

unset($p1->name);
echo $p1->name;
?>
展开
 我来答
飞扬舞侠
推荐于2016-10-19 · TA获得超过271个赞
知道小有建树答主
回答量:294
采纳率:0%
帮助的人:215万
展开全部
$this代表对象本身引用。$this->property_name 表示 该对象下名称为property_name的属性引用。
$this->$property_name 即 $this->{$property_name} ,表示对象下$property_name变量值的属性引用
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式