为了账号安全,请及时绑定邮箱和手机立即绑定

这要求真奇怪,我这哪里错了?

<?php

//定义一个Car类并实例化一个对象

class Car{

    //设置属性

    private $name = '汽车';

    private $price = 1000;


    //构造器

    public function __construct($name, $price)

    {

        $this->name = $name;

        $this->price = $price;

    }


    //设置访问器

    public function getName()

    {

        return $this->name;

    }

    

    public function getPrice()

    {

        return $this->price;

    }

    //设置更改器

    public function setName($name)

    {

        $this->name = $name;

    }

    public function setPrice($price)

    {

        $this->price = $price;

    }


    //toString

    public function __toString()

    {

        return '车名:'.$this->getName().",价格:".$this->getPrice().'<br>';

    }


}


$car = new Car('法拉利',10E9);

echo $car;//调用__toString函数


正在回答

4 回答

类名重定义,把类名Car换个其他名字,或者定义类的时候首字母尽量小写,避免与库中的类重复

0 回复 有任何疑惑可以回复我~

自 PHP 5.2.0 起,如果将一个未定义 __toString() 方法的对象转换为字符串,会产生 E_RECOVERABLE_ERROR 级别的错误 ----https://www.cnblogs.com/toumingbai/p/9364982.html

0 回复 有任何疑惑可以回复我~

echo $car;//调用__toString函数 为什么这样能输出数据。

  public function __construct($name, $price)

    {

        $this->name = $name;

        $this->price = $price;

    }

这个干什么,有什么作用。

0 回复 有任何疑惑可以回复我~

没什么错啊   最后输出 

车名:法拉利,价格:10000000000


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

这要求真奇怪,我这哪里错了?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信