考虑test.php
OK
here
<?php echo "now"; ?>
what
如果你要运行这个文件,你可以期望它输出如下:
OK
here
now
what
但它返回
OK
here
nowwhat
造成这种情况的原因是什么?可以预防吗?
P.S。
如果你在php代码所在的行之后添加任何字符,甚至是空格,那么就会重新获得换行符。
OK
here
<?php echo "now"; ?>[space]
what
答案 0 :(得分:2)
与在C或Perl中一样,PHP要求在每个语句结尾处以分号结束指令。 PHP代码块的结束标记自动表示分号;你不需要一个分号来终止PHP块的最后一行。 该块的结束标记将包含紧接着的新行(如果存在)。
来自php.net
因此换行的“吃”是预期的行为。您找到的解决方法是放置空格,或使用上面的答案并添加\ n。
答案 1 :(得分:0)
请在echo
中添加一个break标记OK
here
<?php echo "now <br>"; ?>
what
你的输出将是这样的:
OK
here
now
what