标签:
定义一个人类
class person{
public $name;
public $gender;
public function say(){
//echo $this->name."say".$this->gender;
}
public function __set($name,$value){
$this->name=$value;
}
public function __get($name){
if(!isset($name)){
echo "未设置";
}else{
return $this->$name;
}
}
}
$student =new person();
$student->name="cat";
$student->gender="male";
$student->say();
$student->age ="12";
通过反射获取php中的类名,方法名
//使用class函数 var_dump(get_object_vars($student)); //返回对象的关联数组 var_dump(get_class_vars(get_class($student)));// 类的属性 var_dump(get_class_methods(get_class($student)));//方法名的数组 echo get_class($student);//类名

//使用反射API
$reflect = new ReflectionObject($student);
$props = $reflect->getProperties();
foreach($props as $prop){
print $prop->getName()."</br>";
}
// 返回对象的所有方法
$m = $reflect->getMethods();
foreach($m as $prop){
print $prop->getName();
}
var_dump($props);

标签:
原文地址:http://my.oschina.net/kakoi/blog/520980