换行符在php字符串中不起作用

时间:2017-02-28 01:30:00

标签: php

我有以下函数,我在PHP中将样式排入队列,与WordPress函数非常相似。

public function printHTML() {
        foreach($this->styles as $style) {
            $style = sprintf('<link href="%s" rel="stylesheet" type="text/css" />\n', $style);
            $this->print_html .= $style;
        }
        return $this->print_html;
}

在我的 index.php 页面中调用此内容时,我会执行以下操作:

echo nl2br($styles->printHTML());

但是它似乎只是将整个 print_html 抛到一行中,在源代码中看起来很难看,对于我在这里做错了什么呢?

1 个答案:

答案 0 :(得分:2)

\n仅适用于双引号字符串,即echo "\n";或在您的情况下

$style = sprintf("<link href='%s' rel='stylesheet' type='text/css' />\n", $style);

或者做得更简单

$this->print_html .= "<link href='$style' rel='stylesheet' type='text/css' />\n";