Php 在单独的行上打印数组的内容

Php 在单独的行上打印数组的内容,php,arrays,Php,Arrays,正在试验数组,并想知道为什么在我运行它时,下面的代码似乎没有在单独的行上打印值 <?php $my_array = array("stuff1", "stuff2", "stuff3"); echo $my_array[0] . "\n"; echo $my_array[1] . "\n"; echo $my_array[2] . "\n"; ?> 您需要使用而不是\n进行打印,因为默认的PHP mime类型是HTML,您可以使用在HTML中完成换行 比如说, <?ph

正在试验数组,并想知道为什么在我运行它时,下面的代码似乎没有在单独的行上打印值

<?php

$my_array = array("stuff1", "stuff2", "stuff3");

echo $my_array[0] . "\n";
echo $my_array[1] . "\n";
echo $my_array[2] . "\n";

?>

您需要使用

而不是
\n
进行打印,因为默认的PHP mime类型是HTML,您可以使用

在HTML中完成换行

比如说,

<?php

$my_array = array("stuff1", "stuff2", "stuff3");

echo $my_array[0] . "<br/>";
echo $my_array[1] . "<br/>";
echo $my_array[2] . "<br/>";

?>

这是因为在HTML中,换行符是

,而不是我的PHP教科书中的“\n”

新的php程序员(尤其是来自 (C背景)是试图通过 将行尾字符(“\n”)放入它们打印的字符串中。到 理解为什么这不起作用,您必须区分输出 php(通常是HTML代码,可以通过 从输出的呈现方式(Internet到浏览器程序) 通过用户的浏览器。大多数浏览器程序都会自己制作 关于如何在HTML文本中拆分行的选项,除非强制 带

标记的换行符。字符串中的行尾字符将被删除 在php发送给用户的HTML源代码中添加换行符 浏览器(对于创建可读的HTML仍然很有用 但是它们通常不会对文本的方式产生影响 在网页中查找

所有浏览器都能正确解释

标记,而
\n
通常只会影响源代码并使其更具可读性。

这就使得技巧更为有效

<?php
    $my_array = array("stuff1", "stuff2", "stuff3");
    foreach ( $my_array as $item ) {
        echo $item . "<br/>";
    }
?>

如果您在web浏览器中查看输出。相反,您可以使用HTML分隔符:

<?php
    $my_array = array("stuff1", "stuff2", "stuff3");
    echo implode('<br>', $my_array);
?>


?注意,

是一个文字元素换行符。但是,如果您有一个包装上下文,它是一个空白上下文,

\n
(或
\r\n
)可能没有那么大的不同。如果您使用的是HTML5,则不需要结束标记。结束标记是XHTML的要求,而不是HTML。尽管版本不同,但不是真的。在进入
\n
vs

参数之前,您一切正常。一个
块在这一点之外做了很多工作。这取决于你是从哪里开始的。那么关于影响源代码的
\n
的最后一部分是不是错了?或者仅仅是因为
\n
是否被拾取取决于它所包含的标签?WTF,我甚至不知道。答案是什么?希望你能理解,但我明天可能会看到。完全取决于显示意图,因此,
pre
块将同时显示这两种内容,但
\n
可能不是“相同的”。这可以写成
echo“$item
谢谢你的代码块!虽然它可能回答了这个问题,但如果不加以解释,它就没有多大好处。你能在回答中加些解释吗。来自评论。