/**
  * 判断节点是否是数组定义类型symbol
  * @param AST $node
  * @return boolean
  */
 public static function isArrayDimFetch($node)
 {
     $type = $node->getType();
     if ($type == "Expr_ArrayDimFetch" or $type == "Expr_Array") {
         return true;
     } else {
         return false;
     }
 }
 /**
  * 获取concat中的各个成员
  * 形如:
  *  (1) "aaaa" . $b . "bbbbbb" ;
  *  	使用时,只需要将最大的一个concat传递过来当做参数$node即可
  * @param AST $node
  */
 public function setItemByNode($node)
 {
     $type = $node->getType();
     if ($type == "Expr_BinaryOp_Concat") {
         $parser = new PhpParser\Parser(new PhpParser\Lexer\Emulative());
         $traverser = new PhpParser\NodeTraverser();
         $visitor = new BinaryOpConcatVisitor();
         $traverser->addVisitor($visitor);
         $traverser->traverse(array($node));
         $this->items = $visitor->getItems();
     }
 }
 /**
  * 通过AST node来设置Value符号的值
  * @param AST $node
  */
 public function setValueByNode($node)
 {
     $type = $node->getType();
     $this->value = $node->value;
 }