这两个输入都作为单行输出。
正如我的书所示,我正在这样做。根据我的书,这些格式应该尊重所有的空格和换行符,而不必做\ n废话。
<?php
$author = "Alfred E Newman";
echo <<<_END
This is a Headline
This is the first line.
This is the second.
- Written by $author.
_END;
?>
<?php
$author = "Alfred E Newman";
$text = "This is a Headline
This is the first line.
This is the second.
Written by $author.";
echo $text
?>
编辑这里'我会引用我的书,说明这段代码应该做什么 “PHP还提供了使用&lt;&lt;&lt;运算符的多行序列,通常简称为here-doccument或heredoc。这是一种指定字符串文字的方法,保留换行符和其他空格(包括缩进)在文中。它的用法见例3-8。“ Eg.3-8将是我在这里发布的第一段代码。我正在使用的书是“学习PHP,MySQL,JavaScript和CSS”,由Robin Nixon撰写
另一个编辑好的,这很奇怪,我将示例#2从PHP手册中复制并粘贴到我的PHP IDE中的heredoc示例,并且当输出明显不同时得到相同的结果“http://www.php.net/manual/en/language.types.string.php”
也许这是我的IDE?我正在运行WAMP,一切似乎都运行良好,直到现在......
再次编辑 zomfg我讨厌发生这种情况,后来在书中他说这是正常的,因为HTML格式规则接管并且白色空间得到了补充“ 我的坏人 TBH,我没有看到它只在源页面中可见但没有用新行格式化。有什么好用的,当你可以打开原始文件并自己查看它
答案 0 :(得分:3)
您可以将其放在<pre>
标记中,否则HTML需要<br>
个标记来识别换行符。
echo "<pre>$text</pre>";
答案 1 :(得分:1)
添加HTML标记的另一种方法是将文档显示为纯文本。在顶部添加(在任何echo
语句之前)
header('Content-type: text/plain');
答案 2 :(得分:0)
$text = "This is the first line.<br>This is the second.<br>Written by $author." ;
答案 3 :(得分:0)
有一个php函数nl2br(New-Line to Break Rule),它基本上会在每个新行中插入一个<br>
标记。
这可能是为HTML输出准备文本的另一种方法。