我能够解决这个问题,
需要采取两个步骤:
让PHP不解析’#’作为注释:
更改:
"#"|"//" {
至
"//" {
Tokenize #a作为变量:
更改:
simple_variable:
T_VARIABLE { $$= $1; }
| '$' '{' expr '}' { $$= $3; }
| '$' simple_variable { $$= zend_ast_create(ZEND_AST_VAR,$2); }
;
至:
simple_variable:
T_VARIABLE { $$= $1; }
| '$' '{' expr '}' { $$= $3; }
| '$' simple_variable { $$= zend_ast_create(ZEND_AST_VAR,$2); }
| '#' '{' expr '}' { $$= $3; }
| '#' simple_variable { $$= zend_ast_create(ZEND_AST_VAR,$2); }
;
而已
现在这段代码有效:
#a=1;
echo (#a);//1