<?php
class Person{
private $name;
private $age;
private $gender;
public function __construct($name,$age,$gender){
$this->setName($name);
$this->setAge($age);
$this->setGender($gender);
}
public function setName($name){
$this->name = $name;
}
}
// ... getter setter 方法
}
$peron = new Person("lee",18,'男');
?>
为什么报错呢 ?
$this->setAge($age);
$this->setGender($gender);
你这2个 写错了吧。 你里面并没有 setAge 跟setGender函数
<?php
//构造函数各种情况,有参数,无参数都
//主要认识:
//1. 类内部调用函数要加$this->才能调用,当然静态除外
//2. 构造函数参数是指被类外所调用的参数,跟类内无关,也就是说把类外new people()里面的参数传进来给类内属性初始化用的。
class people
{
public $name="hnb";
public $age=30;
public function say()
{
echo "I can say";
}
public function __construct($m,$n,$t)
{
echo "this is construct";
$this->name=$m;
$this->age=$n;
echo "<br />";
$this->say();
echo "<br />";
// echo $t;
}
}
//$rd=new people;
//print_r($rd);
$rd2=new people(5,35,40);
print_r($rd2);
echo "
";
echo $rd2->name;
echo $rd2->say();
?>
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。