<?php class Person { private $name; private $age; private $id;
function __construct( $name, $age ) { $this->name = $name; $this->age = $age; }
function setId( $id ) { $this->id = $id; } function getId(){ echo "get id method"; } function __clone() { $this->id = 0; } }
class ReflectionUtil { static function getMethodSource( ReflectionMethod $method ) { $path = $method->getFileName(); $lines = @file( $path ); $from = $method->getStartLine(); $to = $method->getEndLine(); $len = $to-$from+1; return implode( array_slice( $lines, $from-1, $len )); } }
$class = new ReflectionClass( 'Person' ); $method = $class->getMethod( 'getId' ); print ReflectionUtil::getMethodSource( $method );
?>
|