<?php
/*
?* WEB开发笔记 www.chhua.com 每日练习之PHP中的拦截器
?*/
/*
?*/
final class classTest{
?public function __toString(){//类被当作字符串输出的时候调用
????? return “这是一个classTest类的实例化的对象? __toString方法实现的<br>”;
?}
?
?public function __set($k,$v){//试图设置对象没有定义的属性时调用,需要两个参数,一个是属性名称,一个是属性值
??echo “使用 __set()方法设置属性”.$k.”的值为”.$v.”<br>”;
??$this->array[$k]=$v;// 设置 $this->array[$k]的同时,会调用 __get()方法
?}
?
?public function __get($k){//试图获取对象没有定义的属性时调用,参数是属性名称
??echo “成员属性”.$k.”不存在<br>”;
?}
?
?public function __call($name,$arr){//试图调用没有定义的方法时调用,参数两个,$name是方法名,$arr是参数数组
??echo $name.”是一个不存在的方法,将被重载,其中参数包括:”;
??echo “<br>”;
??print_r($arr);
?}
}
$obj=new classTest();
echo $obj;
$obj->b=”www.chhua.com“;
echo $obj-b.”<br>”;
echo $obj->c;
$obj->write(1,2,3,4,5);
?>
自由转载,转载请注明: 转载自WEB开发笔记 www.chhua.com
本文链接地址: PHP中的拦截器使用示例代码 http://www.chhua.com/web-note750
评论