| // +----------------------------------------------------------------------+ // /** * Method and Class parameter data container * * @package PHP_CodeDoc * @access public * @author Alan Knowles * */ class PHP_CodeDoc_Data_Param { var $name =''; // name of parameter var $Value = ''; // default value var $desc = ''; var $type = ''; function descToHTML() { $lines = explode("\n", $this->desc); if (count($lines) < 2) { return $this->desc; } if (preg_match('/array/i', $this->type) && preg_match('/\+\s+[a-z0-9_-]+:/', $this->desc)) { // dl list... $ret = array_shift($lines) . "
"; $cur = false; $sets = array(); foreach($lines as $l) { $m = array(); if (preg_match('/^\s+\+\s+([a-z0-9_-]+):\s+(.*)$/i', $l, $m)) { if ($cur) { $sets[] = $cur; } $cur = array('key'=>$m[1], 'val' => $m[2] ); continue; } if ($cur) { $cur['val'] .= "\n" . $l; } } if ($cur) { $sets[] = $cur; } foreach($sets as $kv) { $ret.="
" . $kv['key'] . '
' . str_replace('\n', '
', htmlspecialchars($kv['val'])) . '
'; } return $ret; } return implode('
', $lines); } }