每当我在PHP中使用echo时,我会得到两个额外的回车。例如:
<?php
echo 'abc';
?>
产生abc [cr] [cr]。如果我将我的脚本复制到另一台服务器,我甚至得到[cr] abc [cr] [cr]。
如何强制PHP仅回显我的字符串'abc'而不回显回车?
答案 0 :(得分:8)
echo
不会在PHP中添加\n
。
您可能希望删除结束?>
,然后您保证不会有任何结尾输出。
答案 1 :(得分:4)
在?>
之后删除两个回车(或删除?>
)
答案 2 :(得分:1)
echo
没有回车符。
意外的空格或行通常是由脚本使用引起的。如果您的进程将在一行上,那么在脚本端也使用一行。至于这个例子; `
作为提示的其他主题,即使是更方便的事情,您也可以使用conditional statements
进行简单的if
/ else
语句。
考虑以下示例:
<?php echo ($foo == "bar") ? "Foo was bar." : "Foo wasn't bar."; ?>
答案 3 :(得分:1)
PHP脚本本身放在HTML文件中,因此对空白区域敏感。这意味着您的代码周围的任何空白区域都将在屏幕上显示。正如你想要的那样,因为它可能是段落中段!
正如其他答案建议的那样,要么清除新行返回你的标签周围,要么你可以通过欺骗PHP解释器来欺骗删除结束的换行符 - 从最后的“?&gt;”开始标签
答案 4 :(得分:1)
我必须得出结论,服务器设置会导致PHP在所有输出之前和之后具有任意数量的回车符。当然,这是我正在使用的Web主机的配置文件中的错误。它应该不是这样的。