首页  >  文章  >  后端开发  >  php 实现反射

php 实现反射

WBOY
WBOY原创
2016-06-23 13:24:071036浏览

定义一个人类 

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);

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn