Home > Backend Development > PHP Tutorial > php 实现反射

php 实现反射

WBOY
Release: 2016-06-23 13:24:07
Original
1067 people have browsed it

定义一个人类 

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";
Copy after login

通过反射获取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);//类名
Copy after login

//使用反射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);
Copy after login

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template