/**
* Evaluates the provided PHON data.
* @param string $phon The PHON data.
* @return mixed The PHP values represented by the PHON data.
*/
public function evaluate($phon) {
if (!$this->validator->isSecure($phon)) {
require_once 'InvalidPHON.php';
throw new InvalidPHON('PHON data found to be unsecure and evaluation was halted', $phon);
}
$data = null;
if (@eval("\$data = $phon;") === false) {
require_once 'InvalidPHON.php';
throw new InvalidPHON('PHON evaluation halted due to invalid data format', $phon);
}
return $data;
}
}