我正在为PHP开发一个AST构建器,在查看一些PHP语法文件时,我注意到
T_ENCAPSED_AND_WHITESPACE对于使用令牌的HEREDOCS/NOWDOCS,我的AST构建器失败。我似乎找不到该标记的表示形式以及匹配哪种正则表达式
发布于 2014-05-15 01:13:31
这是由于在双引号字符串中使用带引号的数组键造成的。例如:
$foo['bar'] = 'baz';
echo "$foo['bar']";
PHP Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING正确的语法是:
echo "$foo[bar]"; // no quotes on the array key
echo "{$foo['bar']}"; // extended {} notationhttps://stackoverflow.com/questions/23661000
复制相似问题