示例#1
0
 /**
  * Parses the token tree for a class property.  $k is the position
  * in $tokens of the T_VAR token.
  */
 function _getVar($k, $tokens)
 {
     $out = new StdClass();
     $out->name = $tokens[$k + 2][1];
     for ($i = $k; $i > $k - 5; $i--) {
         if (is_string($tokens[$i])) {
             continue;
         }
         if ($tokens[$i][0] == T_DOC_COMMENT) {
             $c = Docs::_getComment($tokens[$i][1]);
             foreach ($c as $key => $value) {
                 $out->{$key} = $value;
             }
             break;
         }
     }
     $out->line = '';
     for ($i = $k + 2; $tokens[$i] != ";"; $i++) {
         if (is_string($tokens[$i])) {
             $out->line .= $tokens[$i];
         } else {
             $out->line .= $tokens[$i][1];
         }
     }
     return $out;
 }