//声明一个类 class Person{ //类里面的属性 public $userName='Clive'; protected $age='27'; //受保护的,无法在类的外部访问(隐私属性) //类里面的行为:方法 //public:共用的、默认的 ==> 可以在类的外面访问 //protected:受保护的 ==> 只能在类的里面访问 //private:私有的 public function eat(){ echo '人是要吃饭的!'; echo $this->age; //隐私属性,只能在类内部访问 } public function run(){ echo '人是可以跑步的!'; } //通过一个魔术常量来写构造函数 public function _construct(){ echo '我是魔术常量书写出来的构造函数!'; } }; $p = new Person(); echo $p->userName; //公共属性,可以在类外部访问 echo '<hr/>'; $p->eat(); echo '<hr/>'; $p->run(); echo '<hr/>'; echo '<hr/>';
//声明一个类 class Cat{ //类里面的属性 public $userName; public $age; //类里面的行为:方法 //构造函数 // public function Cat($userName,$age){ // //$this 表示当前对象 // $this->userName=$userName; // $this->age=$age; // echo '我是用5.5版本以前的方法写的构造函数!'; // } //通过一个魔术常量来写构造函数(注意:魔术常量的下划线是两根) public function __construct($userName,$age){ //$this 表示当前对象 $this->userName=$userName; $this->age=$age; echo '我是魔术常量书写出来的构造函数!'; } public function __destruct(){ echo '析构函数会在对象的所有引用被删除或者显示的消失之前被调用!'; } }; //构造函数在创建new对象的时候调用 $c=new Cat('clibe',27); echo '<hr/>'; echo $c->userName; echo '<hr/>'; $c=null; echo '<hr/>';echo '<hr/>';
//声明一个类 class Dog{ private $useName; private $age; //设置私有属性:age //setAge:给age设值 或者用魔术常量:_set public function setAge($age){ //$this->age = 16; //$this->age = private $age; $this->age = $age; } //getAge:给age取值 或者用魔术常量:_get public function getAge(){ return $this->age; } public function __set($key,$value){ $this->useName = $value; } public function __get($key){ return $this->useName; } } $dog = new Dog(); $dog->setAge(16); echo $dog->getAge(); echo '<hr/>'; $dog->__set('userName','clibe' ); echo $dog->__get('userName');