【问题标题】:PHP - how to print newline?PHP - 如何打印换行符?
【发布时间】:2016-04-02 18:11:50
【问题描述】:

我是 PHP 的初学者。我试图在我的 XML 的每一行之后打印一个换行符 (\n)。

$xml = '<items>';
    while ($row = mysqli_fetch_assoc($result)) {
        $xml = $xml.'<product>';
        foreach ($row as $key => $val) {
            $xml = $xml . "<$key>$val </$key>";
        }
        $xml = $xml . '</product>';
        PHP_EOL;
    }
    $xml = $xml . '</items>';

但它给了我这样的输出:

1 Coca-cola Can 5 30 100 pcs 2 Sprite 5 50 10 pcs 3 Fanta 5 100 20 pcs

我想要这样的输出:

1 Coca-cola Can 5 30 100 pcs
2 Sprite 5 50 10 pcs
3 Fanta 5 100 20 pcs

我尝试了很多变体,也看到了很多答案,但没有一个对我有用。请帮忙。

【问题讨论】:

  • 你尝试过什么,你想做什么?这是为了在网站上展示吗?
  • 不,我的任务。我用过 "" , "\n",但没有用。我只想在每个产品信息之后打印一个新行。谢谢。
  • 任务是什么?
  • \nPHP_EOL 不会在屏幕上打印新行。查看您的 HTML 源代码,您将在那里看到换行符。如果您想“在屏幕上”看到它,请使用 HTML &lt;br&gt;&lt;p&gt; 标签。
  • 我必须从 phpmyadmin 数据库中获取信息并使用 XML 显示它

标签: php xml


【解决方案1】:

要获取换行符,请使用\n。但是对于这个转义序列,您需要使用双引号:

echo "new\nline";

会输出

new
line

同时

echo 'new\nline`;

会直接输出new\nline 字符串。如果您更喜欢单引号作为字符串,那么您可以执行以下操作:

echo 'new' . "\n" . 'line';

【讨论】:

  • 将在 HTML 源代码(或者如果写入文件)中输出一个新行,而不是在屏幕上。
  • not on screen。啊哈。为什么你有 60K 的代表,仍然发布这样的废话?您是否阅读并理解了 OP 的问题?您在其中看到任何 HTML 吗?
  • Facepalm - 你不必侮辱我。顺便说一句,\n 不会在屏幕上发布新行。 &lt;br&gt;&lt;p&gt; 将。我有足够的 PHP 经验来支持这一点。 echo "new\nline";一行 中生成 new line,而对于同一行代码查看 HTML 源代码 会在两行中显示它。我在这里没有抓住什么?
  • 对于您评论的 edited 部分,是的,我有。 OP:“我正在尝试打印换行符”
  • WILL NOT post new lines on screen - 当然会。但是您似乎不了解这里的基础知识 - PHP 是常规编程语言,将其用于 Web 只是一种情况。说print 意味着用 HTML 发送东西只是证明你并不真正知道你在说什么。有趣的是,您将时间浪费在 cmets 上,而不是尝试和修复您的知识。然后给你一些提示:在 shell 中运行我的代码。还有另一个提示。尝试使用您心爱的浏览器 - 首先回显&lt;pre&gt;。魔法! “它不在屏幕上”,但它就在那里。现在看到了吗?
【解决方案2】:

这里:

        $xml = $xml.'</product>';
        PHP_EOL;

你必须像这样连接那个 PHP_EOL:

        $xml = $xml . '</product>' . PHP_EOL;

但是,如果您想在屏幕上显示新行,请使用&lt;br&gt;

$xml = $xml . '</product>' . '<br>';

【讨论】:

  • 很高兴为您提供帮助!请将此答案视为已接受的答案:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-07
  • 2018-12-02
相关资源
最近更新 更多