00001 <?php 00020 class ExtendedReflectionMethod extends ReflectionMethod 00021 { 00027 public function getDeclaringClass() 00028 { 00029 $objReflectionClass = parent::getDeclaringClass(); 00030 return $this->createExtendedReflectionClass( $objReflectionClass ); 00031 } 00032 00038 public function getParameters() 00039 { 00040 $arrReflectionParameters = parent::getParameters(); 00041 $arrExtendedParameters = array(); 00042 foreach( $arrReflectionParameters as $objReflectionParameter ) 00043 { 00044 /*@var $objReflectionParameter ReflectionParameter */ 00045 $arrExtendedParameters[] = $this->createExtendedReflectionParameter( $objReflectionParameter ); 00046 } 00047 return $arrExtendedParameters; 00048 } 00049 00059 protected function createExtendedReflectionClass( ReflectionClass $objOriginalReflectionClass ) 00060 { 00061 return new ExtendedReflectionClass( $objOriginalReflectionClass->getName() ); 00062 } 00063 00073 protected function createExtendedReflectionParameter( ReflectionParameter $objReflectionParameter ) 00074 { 00075 return new ExtendedReflectionParameter( Array( $this->getDeclaringClass()->getName() , $this->getName() ) , $objReflectionParameter->getName() ); 00076 } 00077 00078 } 00079 ?>
1.5.9