【发布时间】:2014-05-11 21:27:36
【问题描述】:
按预期工作,没有解析错误
<?php switch(rand(0,2)): ?>
<?php case 0: ?>
<?php break;?>
<?php case 1: ?>
<?php break;?>
<?php case 2: ?>
<?php break;?>
<?php endswitch;?>
</div>
由于切换后的新行而产生 parese 错误...这是非常奇怪的行为。使用 PHP 5.4.24。
解析错误:解析错误,预计第 18 行 /Library/WebServer/Documents/phppos/index.php 中的
"endswitch (T_ENDSWITCH)"' or"case (T_CASE)"' 或 `"default (T_DEFAULT)"'
<?php switch(rand(0,2)): ?>
<?php case 0: ?>
<?php break;?>
<?php case 1: ?>
<?php break;?>
<?php case 2: ?>
<?php break;?>
<?php endswitch;?>
【问题讨论】:
-
试过
<?php switch(rand(0,2)) { ?> something ... <?php }?>? -
嗯,这有点酷。在 hhvm 中尝试并得到一个类似但更详细的错误: $ hhvm test.php 致命错误:语法错误,意外的 T_INLINE_HTML,在 /home/jkoudys/test.php 的第 2 行 #0 处需要 T_ENDSWITCH 或 T_CASE 或 T_DEFAULT /home/jkoudys/test.php:2]
标签: php