封装的四个魔术常量: __set,__get,__isset,__unset四个方法。 问题:构造函数与析构函数的用法:
代码语言:javascript复制<?php
class people
{
function __construct($_name,$_age)
{
$this->name=$_name;
$this->age=$_age;
echo "是个对象了".'<br>';
}
function __destruct()//注意,析构函数不能有参数哈
{
echo "被销毁了...";
}
}
$p1=new people('cyg',20);
?>
//__set与__get函数的用法:
代码语言:javascript复制<?php
class people
{
private $name='cyg';
function __get($name)//然后是获取到$value所赋值的变量了$name了
{//然后返回把...
return $this->$name;
}
function __set($name,$value)//第一个是赋值的左边,第二个是右边.$value是cyg,$name是新定义的变量
{
$this->$name=$value;
}
}
$p1=new people();
echo'当自动获取属性存在时,我的名字是:'.$p1->name;
?>
//__isset与__unset的运用:
代码语言:javascript复制<?php
class people
{
var $name='cyg';
public function __isset($nm)//看看存不存在把
{
return isset($this->$nm);//返回true或者false
}
public function __unset($nm)
{
unset($this->$nm);//销毁不需要返回了,因为什么都没有了,都没有值了
}
}
$p1=new people();
echo isset($p1->name);//1代表存在值,0代表不存在把
echo "<br />";
echo "下面是上面都没有了";
unset($p1->name);
?>
记住,__isset与__unset是public类型的哈.
继承: 父类—基类 子类–派生类