Exemple #1
0
function create_markup_to_parameter_section(Reflector $obj, $content)
{
    /* {{{ */
    $param_name = ($obj instanceof ReflectionMethod ? 'METHOD' : 'FUNCTION') . '_PARAMETERS';
    /* {PARAMETERS} */
    if ($obj->getNumberOfParameters()) {
        $ident = get_ident_size($param_name, $content);
        $parameters = $obj->getParameters();
        $content = preg_replace('/\\{' . $param_name . '\\}/', create_markup_to_params($parameters, $ident), $content);
        /* {PARAMETERS_DESCRIPTION} */
        if ($ident = get_ident_size('PARAMETERS_DESCRIPTION', $content)) {
            $count = 1;
            $markup = "<variablelist>" . PHP_EOL;
            foreach ($parameters as $param) {
                $markup .= str_repeat(' ', $ident + 1) . "<varlistentry>" . PHP_EOL;
                $markup .= str_repeat(' ', $ident + 2) . '<term><parameter>' . ($param->getName() ? $param->getName() : 'param' . $count) . "</parameter></term>" . PHP_EOL;
                $markup .= str_repeat(' ', $ident + 2) . "<listitem>" . PHP_EOL;
                $markup .= str_repeat(' ', $ident + 3) . "<para>" . PHP_EOL;
                $markup .= str_repeat(' ', $ident + 4) . PHP_EOL;
                $markup .= str_repeat(' ', $ident + 3) . "</para>" . PHP_EOL;
                $markup .= str_repeat(' ', $ident + 2) . "</listitem>" . PHP_EOL;
                $markup .= str_repeat(' ', $ident + 1) . "</varlistentry>" . PHP_EOL;
                $count++;
            }
            $markup .= str_repeat(' ', $ident) . "</variablelist>";
            $content = preg_replace('/\\{PARAMETERS_DESCRIPTION\\}/', $markup, $content, 1);
        }
    } else {
        $content = preg_replace('/\\{' . $param_name . '\\}/', '<void />', $content, 1);
        $content = preg_replace('/\\{PARAMETERS_DESCRIPTION\\}/', '&no.function.parameters;', $content, 1);
    }
    return $content;
}