构造函数是这样写的吗?

来源:2-5 PHP类和对象之构造函数和析构函数

SAGEGSDAGESE

2016-04-02 16:49

还有一些疑问

class car{
   public $name="jordan";//引号内的是默认值吗?
   public $height="198";
   public $weight="98";
   function __construct($name,$height,$weight) {
   //在对象实例化时自动调用
}
   $this->name=$name;//为什么要重新设置变量,上面的public $name不是变量吗?如果不是变量为什么要加上$
   $this->height=$height;//为什么$this->name而不是$this->$name?
   $this->weight=$weight;
   //定义方法
   public function f{
    echo "名字:".$this->name.",身高:".$this->height.",体重:".$this->weight."<br />";
  }
$b = new $car(abc,100;200);
echo $b->name;
echo $b->height;
echo $b->weight;
echo $b->f;

//先输出function f,接着依次输出$name $height $weight,再输出一次 function f,是这个顺序吗?




写回答 关注

1回答

  • 西伯利亚的忠犬
    2016-04-02 17:13:13
    已采纳
    1. 构造函数是这样写

    2. 重新设置变量是因为新变量$name和car类里的$name不是一个变量吧

    3. $this->name貌似是规定用法,就这样记吧

    4. 一、创建了一个属于car的对象,先执行一次car对象中的构造方法

      二、通过$b访问car类中的name并打印

      三、通过$b访问car类中的height并打印

      四、通过$b访问car类中的weight并打印

       五、要访问function f的话,应该是这样:echo $b->f();

    SAGEGS...

    非常感谢!很详细!

    2016-04-03 13:57:49

    共 2 条回复 >

PHP进阶篇

轻松学习PHP中级课程,进行全面了解,用PHP快速开发网站程序

181730 学习 · 2575 问题

查看课程

相似问题