【问题标题】:PHP new line \n and \r\n not workingPHP 新行 \n 和 \r\n 不起作用
【发布时间】:2012-05-07 02:14:28
【问题描述】:
  $rows = mysql_num_rows($result) ;
  for ($j=0 ; $j < 3 ; $j++) {
  for ($i=0 ; $i < 3 ; $i++) {
    $row = mysql_fetch_array($result) ;
    echo '<a href="image2.php?id='.$row['ID'].'">'."<img src='".$row['Image']."' />".'</a>' ;

  }
   echo "\r\n";
  }

代码显示三组三张图像。我的理解是 \r\n 和 \n (双引号)应该创建一个新行。然而,它只是在图像之间插入一个空格。是调用方式 \r\n 错误还是使用错误的代码来插入新行(换行符)

示例(# = 一张图片):

没有回显 \r\n: ######### 带回声 \r\n: ### ### ###

【问题讨论】:

  • 如果你制作html页面你应该使用&lt;br&gt;标签,如果它是控制台应用程序使用PHP_EOL。

标签: php line newline break


【解决方案1】:

当它是 HTML 文本的一部分时,空格 is not displayed verbatim。 \r 和 \n 不是通用常量;它们只是字符,取决于使用它们的任何程序来决定如何处理它们。

您应该改用&lt;br&gt;。

【讨论】:

  • 它应该是&lt;br /&gt;,而不是&lt;br&gt;,才能成为有效的xml。因为br 必须是自闭合标签。
  • 另外:查看源代码(在大多数浏览器中为ctrl+u),换行符在那里可见
  • @twall:你真的知道为什么它必须是有效的XML吗?答:实际上没有,除非您使用 XML 内容类型(没有人使用); 做的人已经修复了他们的标签,因为用户代理根本不会显示页面。 &lt;br&gt; 是有效的 HTML4 和有效的 HTML5。
  • @Jon ...好吧,既然 OP 已经关闭了他们的 &lt;img /&gt; 标签,那么假设他们可能也想关闭他们的 &lt;br /&gt; 标签是有意义的。我倾向于关闭所有内容 - 我发现记住这样做比尝试记住例外情况更容易。
  • @CD001:我也是这样做的(当我不知道更好的时候就养成了这个习惯),但我的意思是它绝对没有提供任何东西,所以我们可以帮自己一个忙并重新训练打字每个这样的标签少两个字符。
【解决方案2】:

你需要:

echo '<br />';

代替:

echo "\r\n";

【讨论】:

  • 答案是正确的,但对其他人进行一些澄清会很好。
【解决方案3】:

您的echo "\r\n"; 在循环之外。将其移到循环内。

另外,如果你想让换行符在浏览器中可见,你也应该打印一个&lt;br /&gt;。

  $rows = mysql_num_rows($result) ;
  for ($j=0 ; $j < 3 ; $j++) {
  for ($i=0 ; $i < 3 ; $i++) {
    $row = mysql_fetch_array($result) ;
    echo '<a href="image2.php?id='.$row['ID'].'">'."<img src='".$row['Image']."' />".'</a>' ;
  }
    echo "<br />\n";    
  }

【讨论】:

  • 刚试过这个方法,效果很好。不知道您是否误读了我的问题,但当前的职位是正确的。感谢您的帮助
  • 刚刚修复了代码并将echo移回原来的位置。
【解决方案4】:

你也可以考虑设置一个合适的标题 示例:


$data = [
    [1,2,3],
    [4,5,6],
    [7,8,9]
];
header("Content-Type: text/plain");
foreach($data as $row){
    echo implode(',', $row) . "\r\n";
}

【讨论】:

    猜你喜欢
    • 2012-09-06
    • 1970-01-01
    • 1970-01-01
    • 2015-05-25
    • 2018-03-09
    • 2013-04-10
    • 1970-01-01
    • 2020-06-27
    • 1970-01-01
    相关资源
    最近更新 更多