/** * You can give a format to return a custom string * @param $val * @param $method_params * @param $row * @return unknown_type */ public function formatTemplate($val, AgaviParameterHolder $method_params, AgaviParameterHolder $row) { $parser = new AppKitFormatParserUtil(); $parser->setDefault($val); $parser->registerNamespace('field', AppKitFormatParserUtil::TYPE_ARRAY); $parser->registerData('field', $row->getParameters()); return $parser->parseData($method_params->getParameter('format', '${*}')); }
private function substituteArguments(array &$args, array &$target = null) { static $tp = null; if ($target == null) { $target =& $this->args; } if ($tp === null) { $tp = new AppKitFormatParserUtil(); $tp->registerNamespace('arg', AppKitFormatParserUtil::TYPE_ARRAY); $tp->setDefault('NOT_FOUND'); } $tp->registerData('arg', $this->args); foreach ($args as $key => &$val) { if (is_array($val)) { $this->substituteArguments($args[$key], $target); } elseif (is_object($val)) { continue; } else { $val = $tp->parseData($val); } } return $args; }