PHP 面向对象
<?php //面向过程 /*$r=5; $m=3.14*$r*$r;*/ //类和对象 //对象:任何东西都可以成为对象,类实例化出来的东西 //累:对所有同类的对象抽象出来的东西 //info:code,name,sex,nation,birthday //对象:一条具体的信息 p001 张三 男 汉族 1990-2-3 //定义类 class ren { var $name; //成员变量 var $age; var $height; var $sex; //一般不要给成员变量赋值 private $age; function __construct($s)//构造函数 { $this->sex=$s; } function run() //成员函数(方法) { echo"这个人正在奔跑"; } function say() { echo $this->name."正在说话"; $this->run(); } function __destruct() //析构函数 { echo"该对象销毁了"; } /* function setage($a) //给age赋值的函数 { if($a>10&&$a<50) //限制条件 { $this->age=$a; } } function getage() //取age的值 { return $this->age; }*/ function __set($name,$value) //对类里面的私有成员进行赋值的魔术方法 { if($name=="age") { if($value>10&&$value<50) { $this->$name=$value; } } else { $this->$name=$value; } } function __get($name) //对类里面的私有成员进行取值的魔术方法 { return $this->$name; } } //使用类 //1.实例化对象 $r=new ren("男"); //给成员变量赋值(调用成员变量) $r->name="张三";//给对象name赋值 //var_dump($r); //3.调用成员方法 $r->run();//执行成员方法 //访问修饰符 //1.如果要加访问修饰符,需要去掉var //2.三种: // public公有的 // protected受保护的(只能在该类或者子类中使用) // private私有的(只能在这个类里使用) //3.如果不加访问修饰符,默认是public //$this引用 //$this代表该对象(哪个对象调用),不是代表该类 //构造函数 //1.写法特殊:function __construct() //2.执行特殊:在造对象的时候最先执行 //3.作用:对对象进行初始化操作 //析构函数 //对象销毁前执行,自动进行调用 ?>