public function parseDocComments($comments)
    {
        $comments = explode("\n", $comments);
        $commentsOut = array();
        $params = array();
        foreach ($comments as $com) {
            if (preg_match('/@/', $com)) {
                $com = preg_replace('/\* /', '', $com);
                $com = preg_replace('/@([a-zA-Z]*)( *)(.*)/', '$1|$3', $com);
                $com = explode('|', $com);
                //$arr = array();
                if (trim($com[0]) == 'param') {
                    $com[1] = $this->parseParamDocs(trim($com[1]));
                    array_push($params, $com[1]);
                    $com[1] = $params;
                    $com[0] = "params";
                }

                if (trim($com[0]) == 'return') {
                    $com[1] = $this->parseReturnDocs(trim($com[1]));
                }

                $commentsOut[trim($com[0])] = trim($com[1]);
                //array_push($commentsOut, array($com[0] => $com[1]));
            }
        }

        return $commentsOut;
    }
public function parseDocComments($comments)
    {
        $comments = explode("\n", $comments);
        $commentsOut = array();
        $params = array();
        foreach ($comments as $com) {
            if (preg_match('/@/', $com)) {
                $com = preg_replace('/\* /', '', $com);
                $com = preg_replace('/@([a-zA-Z]*)( *)(.*)/', '$1|$3', $com);
                $com = explode('|', $com);
                //$arr = array();
                if (trim($com[0]) == 'param') {
                    $com[1] = $this->parseParamDocs(trim($com[1]));
                    array_push($params, $com[1]);
                    $com[1] = $params;
                    $com[0] = "params";
                }

                if (trim($com[0]) == 'return') {
                    $com[1] = $this->parseReturnDocs(trim($com[1]));
                }

                $commentsOut[trim($com[0])] = trim($com[1]);
                //array_push($commentsOut, array($com[0] => $com[1]));
            }
        }

        return $commentsOut;
    }
public function parseDocComments ( $ comments ) { $ comments = explode ( "\n" , $ comments ) ; $ commentsOut = array ( ) ; $ params = array ( ) ; foreach ( $ comments as $ com ) { if ( preg_match ( '/@/' , $ com ) ) { $ com = preg_replace ( '/\* /' , '' , $ com ) ; $ com = preg_replace ( '/@([a-zA-Z]*)( *)(.*)/' , '$1|$3' , $ com ) ; $ com = explode ( '|' , $ com ) ; //$arr = array(); if ( trim ( $ com [ 0 ] ) == 'param' ) { $ com [ 1 ] = $ this -> parseParamDocs ( trim ( $ com [ 1 ] ) ) ; array_push ( $ params , $ com [ 1 ] ) ; $ com [ 1 ] = $ params ; $ com [ 0 ] = "params" ; } if ( trim ( $ com [ 0 ] ) == 'return' ) { $ com [ 1 ] = $ this -> parseReturnDocs ( trim ( $ com [ 1 ] ) ) ; } $ commentsOut [ trim ( $ com [ 0 ] ) ] = trim ( $ com [ 1 ] ) ; //array_push($commentsOut, array($com[0] => $com[1])); } } return $ commentsOut ; }
Parse Doc comments

@param string $comments

@return array
Parse Doc comments