Maison  >  Article  >  développement back-end  >  PHP-返射署理

PHP-返射署理

WBOY
WBOYoriginal
2016-06-13 11:43:14819parcourir

PHP-返射代理

<?phpclass Personal {	public $name;	public $age;		function __construct() {		echo " __construct.. \r\n";	}		public function init() {		echo "init \r\n";	}}interface Work { 	function doWork($personal);} class Student extends Personal implements Work{	public function doWork($personal)  {		echo "$personal \n\r";	}}  # 代理 class ClassDelegator { 	private $target; 	 	function __construct($targetClass) { 		$this->target[] = new $targetClass(); 	} 	 	function __call($name, $args) { 		foreach ($this->target as $obj) { 			$r = new ReflectionClass($obj); 			if ($method = $r->getMethod($name)) { 				if ($method->isPublic() && !$method->isAbstract()) { 					return call_user_func_array(array(&$obj, $name), $args);				}			}		}  	} }  $stu = new ClassDelegator('Student'); $stu->doWork('1111', 'rerew');        

?

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn