魔术方法toString PHP

时间:2015-06-26 07:25:31

标签: php tostring magic-methods

如果我在一个php文件中创建两个类,并为两者定义魔术方法__toString(),其中一个将被执行?因为我已经完成了这个并且其中一个被执行了...我只是穿上不知道为什么?

public function __toString(){
    return $this->pla_id." Nom = ".$this->pla_nom.", Rayon = ".$this->pla_rayon.", Gravitation = ".$this->pla_gravitation;
}

public function __toString(){
        return $this->sat_id."  ".$this->sat_nom."  ".$this->sat_rayon." ".$this->sat_rotation;
    }

并在另一个档案中:

$mars = new Planete(); $mars->setNom("Mars"); $mars->setRayon(3397); 
$mars->setGravitation(3.69);
$ph = new Satellite(); $ph->setNom("Phobos"); 
$ph->setPlanete($mars->getNom()); $ph->setRotation(0.32);
echo $mars;

但只出现第一个!

1 个答案:

答案 0 :(得分:0)

我忘了回应其他班级实例,我的错! 答案是在最后一段代码中添加echo $ ph抱歉!!