Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:尝试使用“创建新行”\";_Php_Newline - Fatal编程技术网

PHP:尝试使用“创建新行”\";

PHP:尝试使用“创建新行”\";,php,newline,Php,Newline,我在写这个: echo "foo"; echo "\n"; echo "bar"; 下面的行中没有写“bar” 我做错了什么 JaviPHP生成HTML。您可能需要: echo "foo"; echo "<br />\n"; echo "bar"; echo“foo”; 回显“\n”; 回声“条”; HTML中的换行符是通过表示的,而不是通过\n表示的 在PHP中使用\n会在源代码中创建一个换行符,并且HTML源代码布局与HTML屏幕布局无关。假设您在web浏览器中查看输出,则至

我在写这个:

echo "foo";
echo "\n";
echo "bar";
下面的行中没有写“bar”

我做错了什么


Javi

PHP生成HTML。您可能需要:

echo "foo";
echo "<br />\n";
echo "bar";
echo“foo”;
回显“
\n”; 回声“条”;
HTML中的换行符是通过

表示的,而不是通过
\n
表示的


在PHP中使用
\n
会在源代码中创建一个换行符,并且HTML源代码布局与HTML屏幕布局无关。

假设您在web浏览器中查看输出,则至少有两个选项:

  • 语句包围文本块

  • header('Content-Type: text/plain');
    
  • \n
    更改为HTML

    标记(

    也可以)


  • 如果要编写纯文本,必须确保内容类型设置为
    content-type:text/plain
    。例如:

    echo "foo<br />bar";
    

    如果您正在处理HTML,您有两个选择。一种是使用

    (或者对于XHTML使用

    )插入新行。另一种方法是将纯文本放在
    元素中(在本例中,“pre”表示预格式化)。

    如果检查页面的源代码,它将被写在新行上。如果希望在浏览器中呈现时它显示在新行上,则必须使用

    标记;
    <?php
    $string = "foo"."\n"."bar";
    echo nl2br($string);
    ?>
    
    echo "foo";
    echo PHP_EOL ;
    echo "bar";
    

    如果文本有换行符,请使用nl2br php函数:

    foreach( $dogs as $dog )
    echo "<option>$dog</option>" . PHP_EOL ;
    
    
    

    这在浏览器中应该很好

    如果您希望在纯文本流中插入新行字符,那么您可以使用独立于操作系统的全局PHP\u EOL

    body{
        white-space:pre-wrap;
    }
    
    在HTML术语中,如果查看页面的源代码,您将看到foo和bar之间的换行符

    因此,如果您正在输出(比如)一个选择框的值循环,并且您希望html源代码“更漂亮”或以后更容易阅读,那么这是非常有用的。e、 g

    <body>
        <?php
            echo "hello\nthere";
        ?>
    </body>
    
    foreach($dogs as$dog)
    回声“$dog”。PHP_EOL;
    
    因为没有提到它,所以您也可以使用CSS空白属性

    hello
    there
    
    它告诉浏览器保留空白,以便

    echo nl2br("\n");
    
     <?php
      echo"Fo\n";
      echo"Pro";
    ?>
    

    这对我来说非常有效

    <body>
        <?php
            echo "Fo\n Pro";
        ?>
    </body>
    
    参考:


    希望有帮助:)

    我们可以使用两种类型在php中应用
    \n

  • 使用CSS

    <?php
        echo nl2br("Fo.\nPro.");
    ?>
    
    它告诉浏览器保留空白,以便

    echo nl2br("\n");
    
     <?php
      echo"Fo\n";
      echo"Pro";
    ?>
    
    结果

    Fo
    专业人士


  • 我们可以使用\n作为php中的新行

    代码片段:
    
    
    输出:

    Fo
    专业的


    这个答案很明显,我花了很长时间才弄明白:

    我知道那看起来像是在包装。不是。我所做的就是在字符串的中间,在
    foo
    bar
    之间点击return。它在HTML源代码中创建了一个新行,使您的PHP看起来很糟糕。这是在Linux/Apache中实现的
    $b='Doe'
    $c=$a.$b“br/>”;
    html元素的换行符取决于它的
    空白
    样式属性。 在大多数元素中,默认的
    空白
    自动
    ,这意味着当文本达到元素的宽度时,会出现断线。 如果希望文本按
    \n
    分隔,则必须为父元素提供以下样式:
    空白:行前
    ,它将读取
    \n
    并中断该行,或
    空白:pre
    也将读取
    \t
    等。 注意:要将
    \n
    作为换行符而不是字符串写入,必须使用双引号字符串(
    “\n”

    如果您不想使用空白,您总是欢迎使用HTML元素来换行,这是

    使用浏览器检查输出?如果您使用浏览器,您是否查看了源代码?这就是新行将显示的地方,仅在源代码中。另外,您使用的是什么操作系统?有些需要一个\r\n。没有必要使用\r\n。PHP不会生成HTML。看起来@Hendrik您从未调试过生成的HTML源代码code@Felix想和大家分享一下你的专业术语吗?@Schrapnel上校:当然。PHP只输出文本(字符),仅此而已。这取决于你对输出做了什么。例如,当从命令行运行时,OPs代码将创建所需的结果。说PHP生成HTML是错误的。我想说
    echo“$dog\n”的可读性比你的要好,但它不是独立于操作系统的,因此移植性较差,我声称生成的HTML源代码更具可读性,但实际上我发现包含PHP_EOL的行更易于扫描,因为我可以知道它的标题。我尝试了这一点,但无论如何我需要使用\t来排列HTML行。这是我发现的使HTML源页面可读的唯一方法(包括php代码生成的javascript,在我的例子中是数组定义),即:调试javascript代码。请解释否决票?最好知道我的答案有什么问题,以便我可以更正。这是否意味着$message=“我的名字\n是凹凸”;echo$message;我的名字是TheBump??而这段代码可能会回答这个问题,提供关于它如何和/或为什么解决这个问题的额外上下文将提高答案的长期价值。
    
    $a = 'John' ; <br/>
    $b = 'Doe' ; <br/>
    $c = $a.$b"&lt;br/>";