<?php /** * Class reperesents a single PHP function. * */ class gtFunction extends gtTestSubject { private $functionName; /** * Set the name of the name of the function * * @param string $functionName */ public function __construct($functionName) { $this->functionName = $functionName; } /** * Get the names of function argments and initialise mandatory and optional argument arrays * */ public function setArgumentNames() { $function= new ReflectionFunction($this->functionName); foreach ($function->getParameters() as $i => $param) { if($param->isOptional()) { $this->optionalArgumentNames[] = $param->getName(); } else { $this->mandatoryArgumentNames[] = $param->getName(); } } } /** * Return the name of the function * * @return string */ public function getName() { return $this->functionName; } } ?>